Prosedur tersimpan akan menggunakan isolasi transaksi yang berlaku saat dipanggil.
Jika prosedur tersimpan itu sendiri menetapkan tingkat isolasi eksplisit, ini akan diatur ulang saat prosedur tersimpan keluar.
(Sunting:Baru saja diperiksa dan ini bertentangan dengan apa yang dikatakan BOL "... itu tetap disetel untuk koneksi itu sampai diubah secara eksplisit" tetapi dapat dilihat dari bawah)
CREATE PROC CheckTransLevel
AS
DECLARE @Result varchar(20)
SELECT @Result = CASE transaction_isolation_level
WHEN 0 THEN 'Unspecified'
WHEN 1 THEN 'ReadUncomitted'
WHEN 2 THEN 'Readcomitted'
WHEN 3 THEN 'Repeatable'
WHEN 4 THEN 'Serializable'
WHEN 5 THEN 'Snapshot'
END
FROM sys.dm_exec_sessions
WHERE session_id = @@SPID
PRINT @Result
GO
CREATE PROC SetRCTransLevel
AS
PRINT 'Enter: SetRCTransLevel'
SET TRANSACTION ISOLATION LEVEL READ COMMITTED
EXEC CheckTransLevel
PRINT 'Exit: SetRCTransLevel'
GO
SET NOCOUNT ON
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
EXEC CheckTransLevel
EXEC SetRCTransLevel
EXEC CheckTransLevel
Hasil
ReadUncomitted
Enter: SetRCTransLevel
Readcomitted
Exit: SetRCTransLevel
ReadUncomitted