136

Microsoft SQL Server で、T-SQL コマンドを使用してデータベースの分離レベルが設定されているかどうかを検出する方法はありますALTER DATABASE <database> SET READ_COMMITTED_SNAPSHOT ON;か?

T-SQL または Management Studio の GUI を介してこれを検出する簡単な方法が見つかりません。

4

3 に答える 3

204
SELECT is_read_committed_snapshot_on FROM sys.databases 
WHERE name= 'YourDatabase'

戻り値:

  • 1 :READ_COMMITTED_SNAPSHOTオプションはオンです。分離レベルでの読み取り操作はREAD COMMITTED、スナップショット スキャンに基づいており、ロックを取得しません。
  • 0 (デフォルト):READ_COMMITTED_SNAPSHOTオプションはOFFです。READ COMMITTED分離レベルでの読み取り操作は、共有 (S) ロックを使用します。
于 2008-09-09T14:10:50.580 に答える
3
  1. DBCC USEROPTIONS (Transact-SQL) に従って:

DBCC USEROPTIONS は、データベース オプション READ_COMMITTED_SNAPSHOT が ON に設定され、トランザクション分離レベルが 'コミットされた読み取り' に設定されている場合、'コミットされたスナップショットの読み取り' の分離レベルを報告します。実際の分離レベルはコミットされた読み取りです。

  1. また、SQL Server Management Studio では、[オプション] -> [その他] の下のデータベース プロパティに、[コミットされたスナップショットの読み取りをオンにする] オプション ステータスがあります。
于 2016-07-09T22:58:29.427 に答える
0

SQL2005 でも 2012 でも表示されませDBCC USEROPTIONSis_read_committed_snapshot_on

Set Option  Value
textsize    2147483647
language    us_english
dateformat  mdy
datefirst   7
lock_timeout    -1
quoted_identifier   SET
arithabort  SET
ansi_null_dflt_on   SET
ansi_warnings   SET
ansi_padding    SET
ansi_nulls  SET
concat_null_yields_null SET
isolation level read committed
于 2014-01-06T03:44:31.637 に答える