📚
SQL Serverにおけるトランザクション分離レベルの確認方法
トランザクション分離レベルの確認方法
以下のクエリを実行することで、現在のトランザクション分離レベルを確認できます。
DBCC USEROPTIONS;
実行結果はこのようになり、現在のセッションで有効な設定が一覧表示されます。
この中の「isolation level」が、現在のトランザクション分離レベルになります。
トランザクション分離レベルの変更方法
以下のクエリを実行することで、トランザクション分離レベルを変更できます。
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
トランザクション分離レベルの一覧
- READ UNCOMMITTED
- READ COMMITTED
- REPEATABLE READ
- SNAPSHOT
- SERIALIZABLE
(補足)READ COMMITTED SNAPSHOTに変更したい場合
- 以下のクエリーを実行し、is_read_committed_snapshot_onの値を確認します。(1:有効、0:無効)
SELECT
name,
is_read_committed_snapshot_on
FROM
sys.databases
WHERE
name = 'データベース名';
- 以下のコマンドを実行します。
ALTER DATABASE データベース名 SET READ_COMMITTED_SNAPSHOT ON;
- 1のクエリーを再度実行し、有効になっていることを確認します。
Discussion