16

我需要在 SQL Server 中以编程方式启用 READ COMMITTED SNAPSHOT。我怎样才能做到这一点?

4

2 回答 2

22

我建议先切换到single-user模式。这样可以确保您是唯一的联系。否则,查询可能会暂停。

来自:http: //msdn.microsoft.com/en-us/library/ms175095.aspx

设置 READ_COMMITTED_SNAPSHOT 选项时,数据库中只允许执行 ALTER DATABASE 命令的连接。在 ALTER DATABASE 完成之前,数据库中必须没有其他打开的连接。

所以,使用这个 SQL:

ALTER DATABASE <dbname> SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
ALTER DATABASE <dbname> SET READ_COMMITTED_SNAPSHOT ON;
ALTER DATABASE <dbname> SET MULTI_USER;
于 2010-05-06T23:11:09.563 回答
5
ALTER DATABASE [dbname] SET READ_COMMITTED_SNAPSHOT ON WITH ROLLBACK AFTER 20 SECONDS 
于 2008-11-04T17:10:48.847 回答