Obvykle nastavujete xact_abort
jako součást těla uložené procedury:
CREATE PROCEDURE MyProc
AS
SET XACT_ABORT ON
BEGIN TRAN
....
Existují dvě "zvláštní" nastavení, která jsou zapamatována z relace, která vytvořila proceduru. Vysvětlení z MSDN:
Když tedy vytvoříte uloženou proceduru, SQL Server zkopíruje možnost QUOTED_IDENTIFIER z připojení k definici procedury. Cílem je, aby se někdo jiný s jiným nastavením QUOTED_IDENTIFIER stále choval tak, jak zamýšlel autor postupu.
Totéž neplatí pro XACT_ABORT
.