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

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

При вызове исключения все, что сделано в ХП откатывается, так? [D6, IB6.x]


calm ©   (2003-03-21 16:26:00) 

Имеется хранимая процедура MainDel, в которой производится несколько вызовов других процедур, в которых удаляются записи.

Примерно так :
...
for select xxx
from xxx
....
do begin
execute procedure Del2 /* тут производится хитрое удаление */
end
...
execute procedure Del1;

При вызове Del2 может произойти исключение. При этом все откатится к состоянию на момент запуска ХП MainDel, а не Del2. Я правильно понимаю?


calm   (2003-03-21 17:19:00) [1]

Впрочем...


> Johnmen © (21.03.03 16:29)
> Откатится, если откатишь. См.управление транзакциями.

Если не затруднит - пару слов на эту тему.
Хелпа под рукой нет :((


calm   (2003-03-21 17:17:00) [2]

Спасибо.
А то я что-то вдруг засомневался в себе.


Alexander Vasjuk   (2003-03-21 16:59:00) [3]

Из документации и личного опыта
Про исключения ibdemo.ru статья есть


Johnmen   (2003-03-21 16:51:00) [4]

>Alexander Vasjuk (21.03.03 16:46)
>Процедура выполняется в рамках транзакции, и при любом сбое >транзакция полностью со всеми вложенными транзакциями ?>откатывается.

Откуда такие интересные сведения ?


Alexander Vasjuk   (2003-03-21 16:46:00) [5]

Правльно понимаешь.
Процедура выполняется в рамках транзакции, и при любом сбое транзакция полностью со всеми вложенными транзакциями откатывается.
Это свойство интересно проявляется, когда внутри процедуры меняестя какой-нибудь эксепшн, он же вызывается, клиенту выныривает глюк с новой подписью, а в результате глюка экцепшн возвращает себе старое значенрие.
Я так раньше локализовал язык ошибок.


Johnmen   (2003-03-21 16:29:00) [6]

Откатится, если откатишь. См.управление транзакциями.


Наверх

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