我需要以编程方式在SQL Server中启用READ COMMITTED SNAPSHOT.我怎样才能做到这一点?
我建议先切换到single-user
模式.这确保您是唯一的连接.否则,查询可能会被暂停.
来自:http://msdn.microsoft.com/en-us/library/ms175095.aspx
设置READ_COMMITTED_SNAPSHOT选项时,只允许在数据库中执行ALTER DATABASE命令的连接.ALTER DATABASE完成之前,数据库中必须没有其他打开的连接.
所以,使用这个SQL:
ALTER DATABASESET SINGLE_USER WITH ROLLBACK IMMEDIATE; ALTER DATABASE SET READ_COMMITTED_SNAPSHOT ON; ALTER DATABASE SET MULTI_USER;
ALTER DATABASE [dbname] SET READ_COMMITTED_SNAPSHOT ON WITH ROLLBACK AFTER 20 SECONDS