|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Проблема с IBQuery
Hi!!! У меня возникла проблема при переходет от компонента IBTable к IBQuery . Когда начинаю выполнять запрос на добовление новой записи:
Код:
var s:string; begin with Data_Module do begin IBQuery1.Active:=True; IBQuery1.Close; s:='insert into employees (F,I,O,lg,pwd) values('+Trim(Edit1.Text)+','+Trim(Edit2.Text)+','+Trim(Edit3.Text)+','+Trim(Edit4.Text)+','+Trim(Edit5.Text)+');'; IBQuery1.SQL.Text:=s; IBQuery1.ExecSQL; end; Код:
Dynamic SQL Error SQL error code = -104 Unexpected end command Уже не знаю что и делать. Пожалуйста объясните что я делаю не так. |
#2
|
||||
|
||||
Лучше всего текст таких запросов формировать с помощью Format:
Код:
IBQuery1.SQL.Text := Format('insert into employees (F,I,O,lg,pwd) values(''%s'',''%s'',''%s'',''%s'',''%s'');',[Trim(Edit1.Text),Trim(Edit2.Text),Trim(Edit3.Text),Trim(Edit4.Text),Trim(Edit5.Text)]); Код:
IBQuery1.SQL.Text := 'insert into employees (F,I,O,lg,pwd) values(:S1,:S2,:S3,:S4,:S5); IBQuery1.ParamByName('S1').AsString := QuotedStr(Trim(Edit1.Text)); IBQuery1.ParamByName('S2').AsString := QuotedStrTrim(Edit2.Text)); IBQuery1.ParamByName('S3').AsString := QuotedStrTrim(Edit3.Text)); IBQuery1.ParamByName('S4').AsString := QuotedStrTrim(Edit4.Text)); IBQuery1.ParamByName('S5').AsString := QuotedStrTrim(Edit5.Text)); IBQuery1.ExecSQL; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 19.02.2011 в 09:46. |
#3
|
||||
|
||||
Спасиб) Вот теперь все работает, буду далше разбираться.
|