Normaal gesproken stel je xact_abort
in als onderdeel van de hoofdtekst van de opgeslagen procedure:
CREATE PROCEDURE MyProc
AS
SET XACT_ABORT ON
BEGIN TRAN
....
Er zijn twee "speciale" instellingen die worden onthouden uit de sessie die de procedure heeft gemaakt. Uitleg van MSDN:
Dus wanneer u een opgeslagen procedure maakt, kopieert SQL Server de optie QUOTED_IDENTIFIER van de verbinding naar de proceduredefinitie. Het doel is dat iemand anders met een andere QUOTED_IDENTIFIER-instelling toch het gedrag krijgt dat de auteur van de procedure bedoelde.
Hetzelfde geldt niet voor XACT_ABORT
.