Автооткат прерванных транзакций в MSSQL
От: Алексей К.  
Дата: 22.03.04 15:17
Оценка:
Вот некоторый фрагмент кода хранимой процедуры

begin transaction
...
<Здесь идет длительный SQL оператор, допустим UPDATE>

set @error = @@error

if @error = 123
    <выполнение действий по этому виду ошибки>
else
if @error = 456
    <выполнение действий по этому виду ошибки>

if @error > 0
   rollback transaction
else
   commit transaction


если прервать выполнение процедуры на этапе выполнения <длительного оператора> то транзакция остается открыта
(это можно увидеть и в Query analyser'е)

Вопрос вот в чем:
Может можно каким либо образом указать чтобы при отмене(именно при отмене) выполнения процедуры, сервер автоматически откатывал открытую транзакцию?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.