SQL Server 快照隔离级别问题

标签 sql sql-server sql-server-2008 transactions isolation-level

我正在通过以下链接研究 SQL Server 2008 的快照隔离级别。我的困惑是,

http://msdn.microsoft.com/en-us/library/ms173763.aspx

  1. 提到“当前事务开始后其他事务所做的数据修改对当前事务中执行的语句是不可见的”。 -- 似乎其他事务提交的数据对当前快照隔离级别事务不可见;

  2. 提到“在 SNAPSHOT 隔离级别下运行的事务可以查看该事务所做的更改。” -- 似乎其他事务提交的数据对当前快照隔离级别事务可见。

似乎 1 和 2 有冲突?有什么意见吗?

提前致谢, 乔治

最佳答案

数字 2 的意思是“我可以看到自己的变化;我看不到其他的变化”

因此,如果我开始交易并进行了更改,我可以看到它们。在我的 TXN 看不到我的更改后开始的其他 session /连接的其他事务

关于SQL Server 快照隔离级别问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1115588/

相关文章:

Mysql 在 select 语句中设置局部变量并仅通过一个查询返回相同的 select 输出

php - 如何从数据库中提取具有特定日期的数据

sql-server - SQL Server 中动态 SQL 中 Oracle 绑定(bind)变量的等价物是什么?

sql - 没有子查询,一个表的两个 "where"语句不起作用

php - 如何为第一个表中的每个结果查询第二个表?

mysql - 数据库挑战: How to Update 1 million records efficiently?

从两个不同的数据库(同一服务器)中的 2 个不同的表中选择的 SQL 语句

c# - 删除行的SQL代码?

sql - 如何跨中间表连接的三个表进行查询?

sql - 如何创建两个相互具有外键约束的 SQL 表?