![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
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
|
||||
|
||||
|
Спасиб) Вот теперь все работает, буду далше разбираться.
|