Sql server 如何检测已启用读\u提交\u快照?
在MS SQL Server中,是否有一种方法可以通过T-SQL命令Sql server 如何检测已启用读\u提交\u快照?,sql-server,isolation-level,read-committed-snapshot,Sql Server,Isolation Level,Read Committed Snapshot,在MS SQL Server中,是否有一种方法可以通过T-SQL命令ALTER database set READ_COMMITTED_SNAPSHOT ON检测数据库是否设置了隔离级别 我无法在T-SQL或ManagementStudio的GUI中找到一种简单的方法来检测这一点 短暂性脑缺血发作 返回值: 1:READ\u COMMITTED\u SNAPSHOT选项处于打开状态。Read COMMITTED隔离级别下的读取操作基于快照扫描,不获取锁 0(默认):READ\u COMMITT
ALTER database set READ_COMMITTED_SNAPSHOT ON检测数据库是否设置了隔离级别代码>
我无法在T-SQL或ManagementStudio的GUI中找到一种简单的方法来检测这一点
短暂性脑缺血发作
返回值:
- 1:
READ\u COMMITTED\u SNAPSHOT
选项处于打开状态。Read COMMITTED
隔离级别下的读取操作基于快照扫描,不获取锁
- 0(默认):
READ\u COMMITTED\u SNAPSHOT
选项为OFF。在readcommitted
隔离级别使用下读取操作
在SQL2005和2012上都没有显示DBCC用户选项showis\u read\u committed\u snapshot\u 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
根据,,
“当数据库选项read_committed_snapshot设置为ON且事务隔离级别设置为read committed时,DBCC USEROPTIONS报告的隔离级别为“read committed snapshot”。实际隔离级别为read committed。”
同样在SQLServerManagementStudio中,在“选项->杂项”下的“数据库属性”中,有“正在读取已提交的快照”选项状态
我喜欢“DBCC USEROPTIONS”(DBCC USEROPTIONS),这更容易记住。@ProVega-DBCC USEROPTIONS不会返回is_read_committed_snapshot_on的值。请尝试阅读此内容,以便更好地理解此处的问题/答案。你的贡献并没有回答这个问题。这更多的是一个评论,一旦你提高了你的声誉,你就可以添加它:答案是可以的,因为它试图回答“有办法吗?”。但是仅仅告诉不起作用的东西不会得到太多的认可。dbccuseroptions
中的隔离级别确实告诉了你。如果它是readcommittedsapshot
,则它处于启用状态,否则它处于禁用状态off@Greg-读取提交的快照设置在数据库级别,而不是用户连接级别。DBCC USEROPTIONS不会告诉您它是打开还是关闭的。
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