Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.08;
Скачать: CL | DM;

Вниз

Сохранение измененных посредством TQuery таблиц   Найти похожие ветки 

 
Роман Василенко ©   (2002-03-08 11:56) [0]

Добрый... день.

Ситуация такая:

На форме есть TQuery, TDataSource, TDBGrid, в общем, все, как обычно. С помощью TQuery выполняется какой-нибудь запрос DML, например "delete from...". Существует некоторое количество случаев, когда результаты подобных команд не сохраняются в таблице. Ну, например, программка обвалилась, или что еще...

Вопрос: существует ли твердый способ сохранить изменения в таблицу (вроде dbiSaveChanges) непосредственно сразу после употребления запроса? Если можно, подскажите способ, при условии, что:

1. Я не использую TDatabase, TSession.
2. При инициализации всем TQuery задается путь к каталогу с файлами БД в свойство DatabaseName
3. Я использую таблицы формата Paradox (если это принципиально)


 
dealing ©   (2002-03-14 11:35) [1]

Попробуй использовать TDataBase.
При любом изменении таблицы делай следующее:

try
DataBase1.StartTransaction; // Начало Транзакции //
Query1.Unprepare;
...
Query1.Prepare;
Query1.ExecSql;
DataBase1.Commit; // Подверждение результатов транзакции,
если все прошло успешно //
except
DataBase1.RollBack; // Отмена выполненной транзакции, недачное
завершение операции //
MessageDlg("Ошибка записи в базу", , mtInformation,[mbOk],0);
end;

Такая система транзакций работает безотказно, все изменения отражаются четко.


 
Роман Василенко ©   (2002-03-18 10:04) [2]

Спасибо.



Страницы: 1 вся ветка

Текущий архив: 2002.04.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
4-22886
Котелок
2002-02-07 06:13
2002.04.08
Api по Com порту и модему


14-22816
QueenOfRain
2002-02-26 10:51
2002.04.08
Трепаться, так и об этом тоже....


3-22579
polarbear
2002-03-17 20:46
2002.04.08
Как остановить сервер FireBird из командной строки под Win9x?


1-22654
solo
2002-03-28 11:32
2002.04.08
Вся работа стоит.


3-22549
ZDN
2002-03-15 13:04
2002.04.08
IB 5.5 на NT 4.0 SP6 переход на 5.6