RCSI为单个查询

时间:2013-02-20 11:28:24

标签: sql sql-server performance sql-server-2008-r2

我可以为特定查询设置Read Committed Snapshot Isolation吗? 为了运行像Read uncommitted这样的查询,我们可以使用“with(nolock)”。有没有类似于RCSI的东西? 我使用SQL Server 2008R2 感谢。

1 个答案:

答案 0 :(得分:1)

简短的回答是:不。读提交的快照数据库设置更改了读提交的隔离级别的语义,以便它采用乐观锁定(而不是默认的悲观)。但是,您可以在查询之前尝试set transaction isolation level snapshot,看看是否能实现您的目标。注意:为了使用快照隔离,需要将数据库配置为允许它。检查sys.databases中的snapshot_isolation_state_desc列。如果它关闭,alter database [yourdb] set ALLOW_SNAPSHOT_ISOLATION on将会解决问题。