** Dimon.Ru |
Отправлено: 29.08.2004, 18:08 |
|
Не зарегистрирован
|
У меня 2 вопроса:
1. Подскажите пожалуйста, как выполнить динамически создаваемый запрос (использую компонент TQuery).
в принципе запросы выполняются, но если присутствуют операторы DELETE или INSERT, то возникают какие-то ошибки.
как это иправить???
может использовать другой компонент??
2. есть TQuery, есть DBGrid, есть TDBNavigator. как надо их правильно связать, чтобы можно было править данные в DBGrid и при нажатии на SAVE в TDBNavigator данные сохранялись на диск?
заранее всем спасибо.
PS: Я программирую на Builder5 |
|
AVC |
Отправлено: 30.08.2004, 08:23 |
|
Ветеран
Группа: Модератор
Сообщений: 1583
|
1.Например так
Query->Text = "Update aaa Set fff = 123 Where ccc = 56";
Query->ExecSQL();
Ошибки у вас скорее всего типа not opened cursor или как то так и связаны с командой Query->Active = true; Ни чего страшного. Можно брать в try catch с отсеиванием этих ошибок либо использовать метод ExecSQL — дело вкуса.
2. На форме TQuery *qry, TDataSet *dsr, TDBGrid *grd, TDBNavigator *nav;
dsr->DataSet = qry;
grd->DataSource = dsr;
nav->DataSource = dsr;
Простой запрос (из одной таблицы, нет кеша изменений)
qry->RequestLive = true;
Запрос из нескольких таблиц без кеша
На форме TUpdateSQL *updqry;
qry->RequestLive = true;
qry->UpdateObject = updqry;
Отредактировано AVC — 30/08/2004, 08:25 |
|
|