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

Вниз

D6, ADO, управление транзакциями......   Найти похожие ветки 

 
Dmitr   (2002-05-22 09:21) [0]

Подскажите пожалуйста...
Трех уровневая модель, посылаю с клиента на сервер второго уровня текст запроса (INSERT, DELETE, UPDATE) в ADOQuery и выполняю ExecSQL
///////////////////
ADOConnection1.BeginTrans;
try
Query.SQL.Clear;
Query.SQL.Add(Stringlist.Strings[i]);
Query.ExecSQL;
except
ADOConnection1.RollbackTrans;
end;

ADOConnection1.CommitTrans;
///////////////////
Почему-то ингода на INSERT вылетает ошибка - нет активной транзакции т.е. не выполняется ADOConnection1.CommitTrans;


 
Shaman_Naydak ©   (2002-05-22 13:50) [1]

ADOConnection1.CommitTrans;
надо затащить после ExecSQL, до except

На инсерт ты видимо пытаешься вставить дубликатную запись,
срабатывает except блок, в нем ты откатываешь транзакцию, но и гасишь исключение, поэтому выполняется коммит, который справедливо тебя посылает
Удачи



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

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

Наверх




Память: 0.46 MB
Время: 0.015 c
1-55087
skiph
2002-06-03 06:40
2002.06.17
TWordApplication


7-55342
Victor N Golutvin
2002-03-19 00:49
2002.06.17
Собственный обработчик прерываний


3-55003
_toltec
2002-04-30 01:48
2002.06.17
Сервис и MySql


4-55359
ProNix
2002-04-16 14:41
2002.06.17
изменения в файловой системе


7-55341
Keymaster
2002-03-15 23:50
2002.06.17
PCL