Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Подскажите, а можно ли использовать транзакции при работе ч-зODBC [D7, FB]


Antoxa2005 ©   (2006-07-30 06:12:00) 

Выполняется два последователных запроса:

1. На вставку
INSERT INTO ArchiveTable VALUES (SELECT * FROM ActualTable) WHERE DeletionLabel = TRUE;

2. На уничтожение
DELETE FROM ActualTable WHERE DeletionLabel = TRUE;

Необходимо что бы они оба выполнились, а в случае сбоя откатить все изменения. Как можно это реализовать работая с FB ч-з ODBC+ADO.


Johnmen   (2006-07-31 20:24:00) [1]


> Anatoly Podgoretsky ©   (31.07.06 19:58) [6]


Не существует в мире такого везения...:)


Anatoly Podgoretsky   (2006-07-31 19:58:00) [2]

Johnmen ©   (31.07.06 09:10) [2]
Может выполниться, если повезет.


Slym   (2006-07-31 13:17:00) [3]

Desdechado ©   (31.07.06 11:30) [4]
псевдокод...


Desdechado   (2006-07-31 11:30:00) [4]

Antoxa2005
> INSERT INTO ArchiveTable VALUES (SELECT * FROM ActualTable) WHERE DeletionLabel = TRUE;
Slym ©   (31.07.06 09:42) [3]
> INSERT INTO ArchiveTable FROM (SELECT * FROM ActualTable WHERE DeletionLabel)
Весьма странный синтаксис, если не сказать сильнее...


Slym   (2006-07-31 09:42:00) [5]

INSERT INTO ArchiveTable FROM (SELECT * FROM ActualTable WHERE DeletionLabel)


Johnmen   (2006-07-31 09:10:00) [6]

А запрос №1 точно выполняется? :)))


DiamondShark   (2006-07-30 10:08:00) [7]


> ч-з ODBC+ADO.

TADOConnection.BeginTrans
TADOConnection.CommitTrans
TADOConnection.RollbackTrans


Наверх

Титульная страница Поиск, карта сайта Написать письмо