Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Прерывание транзакции при XACT_ABORT OFF  [new]
mattg
Guest
Добрый день!

Есть такая проблема. Если при XACT_ABORT OFF пользователь прерывает запрос, транзакция не откатывается. Это хорошо видно на следующем примере:

begin tran
set xact_abort off
create table _temp(id int) /* операция, которая не откатывается */
waitfor delay '1:0:0' /* имитация долгого запроса, во время которого пользователь прерывает процесс */
if @@error <> 0
  rollback tran
else
  commit tran


Если при выполнении waitfor прервать выполнение (остановить в Management Studio либо убить процесс клиентского приложения), таблица _temp остается в базе. почему так происходит? как можно при xact_abort off обеспечить откат транзакции?
28 янв 15, 21:17    [17185898]     Ответить | Цитировать Сообщить модератору
 Re: Прерывание транзакции при XACT_ABORT OFF  [new]
mattg
Guest
натупил, тему можно закрывать.

менеджмент студио оставляет открытую транзакцию в таком случае
28 янв 15, 22:29    [17186118]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить