SQL Server中的快照隔离

时间:2014-11-07 09:49:52

标签: sql-server database tsql

您好,请告诉我快照隔离对我有什么样的问题?

就像我为数据库设置这个优点和缺点一样?

    ALTER DATABASE MyDatabase
SET ALLOW_SNAPSHOT_ISOLATION ON

ALTER DATABASE MyDatabase
SET READ_COMMITTED_SNAPSHOT ON

1 个答案:

答案 0 :(得分:1)

我们必须使用 SET ALLOW_SNAPSHOT_ISOLATION ON。

这样做的原因是我们需要确保在登台表中进行插入时报表存储过程不会失败,如果在ETL服务执行文件加载时执行报表,很可能会发生这种情况。通过使用快照隔离,我们可以确保报告在插入事务开始之前使用数据副本,因此不会受到插入事务的影响。

请注意,我们将使用快照隔离而不是读取提交的快照隔离。

这是一篇很好的文章,解释了快照隔离级别:

http://www.brentozar.com/archive/2013/01/implementing-snapshot-or-read-committed-snapshot-isolation-in-sql-server-a-guide/