Как обновить DBGrid после добавления данных ?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
nic1982
новенький
Сообщения: 48
Зарегистрирован: 17.05.2011 16:34:05

Как обновить DBGrid после добавления данных ?

Сообщение nic1982 »

Как обновить DBGrid после добавления данных в таблицу?
Все что находил в интернете не помогло.
Есть общий IBConnection1
для отображения данных DBGrid->DataSource1->SQLQuery1->SQLTransaction1
для добавление данных SQLQuery2->SQLTransaction2

Код: Выделить всё

SQLQuery2.SQL.Add('INSERT INTO callboard (messages)');
SQLQuery2.SQL.Add('VALUES (:messages);');
SQLQuery2.ParamByName('messages').AsString:= LabeledEdit1.Text;
SQLTransaction2.StartTransaction;
SQLQuery2.ExecSQL;
SQLTransaction2.Commit;

Добавленные данные отображаются после перезапуска программы.

Добавлено спустя 14 минут 12 секунд:
нужно использовать Refresh

Код: Выделить всё

SQLQuery2.SQL.Add('INSERT INTO callboard (messages)');
SQLQuery2.SQL.Add('VALUES (:messages);');
SQLQuery2.ParamByName('messages').AsString:= LabeledEdit1.Text;
SQLTransaction2.StartTransaction;
SQLQuery2.ExecSQL;
SQLTransaction2.Commit;

[b]DataModule1.SQLQuery1.Refresh;[/b]


Добавлено спустя 8 минут 15 секунд:
и в SQLTransaction1.Params нужно добавить

Код: Выделить всё

isc_tpb_read
isc_tpb_nowait
isc_tpb_rec_version
isc_tpb_read_committed
Аватара пользователя
alexs
долгожитель
Сообщения: 4069
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

А использовать правильный метод - никак?
Изучаем - зачем у SQLQuery2 есть запросы Insert/Update/Delete/RefreshSQL и методы Insert/Edit/Post
Ответить