Чтение таких вещей как пост в блоге Dan Guzman, интересно: почему не SET XACT_ABORT ON
поведение по умолчанию? Есть ли случай, когда он вреден или гораздо менее желателен/эффективнее, чем SET XACT_ABORT OFF
?
Почему SET XACT_ABORT не работает по умолчанию?
Ответ 1
Это автоматический ответ на ошибку, более желательно, если вы сможете справиться с ошибкой и восстановить ее. Если транзакция автоматически откатывается назад, вы не получите эту возможность.
Проблема, которую Дан упоминает в своем блоге, возникает из-за прерывания от клиента, в SQL это прерывание не существует. Следовательно, в SQL по умолчанию не происходит автоматического прерывания транзакций.