Answers:
SELECT is_read_committed_snapshot_on FROM sys.databases
WHERE name= 'YourDatabase'
返回值:
READ_COMMITTED_SNAPSHOT
选项为ON。READ COMMITTED
隔离级别下的读取操作基于快照扫描,并且不获取锁定。READ_COMMITTED_SNAPSHOT
选项为OFF。READ COMMITTED
隔离级别下的读取操作使用Shared(S)锁。根据https://msdn.microsoft.com/zh-cn/library/ms180065.aspx,“当数据库选项READ_COMMITTED_SNAPSHOT设置为ON且事务隔离级别为设置为“读已提交”。实际的隔离级别为已读已提交。”
同样在SQL Server Management Studio中,在“选项”->“其他”下的数据库属性中,存在“正在读取提交的快照”选项状态
在SQL2005和2012上均未DBCC USEROPTIONS
显示is_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
DBCC USEROPTIONS
确实会告诉您。如果read committed snapshot
打开,则打开,否则关闭