您还需要知道SNAPSHOT和READ COMMITTED SNAPSHOT之间的区别 - 对于后者,您需要修改BOL的报价,如下所示:
“在当前开始之后由其他交易进行的数据修改 STATEMENT(非事务!)对当前事务中执行的语句不可见。“
一个例子,它会产生很大的不同: 快照隔离帮助和何时伤害
你必须全局思考。 的 READ_COMMITTED 强> 只有效/有用。会有什么用 的 READ_UNCOMMITTED 强> ?什么业务需要脏读?读串口?为什么任何业务需求会强制要求读取数据。 SQL服务器设计师并没有考虑简化。 Oracle选择只支持一个,它可以工作。快照是db应该如何解决这个问题,所以我们甚至都不知道。对于左脑,我们应该研究如何支持业务逻辑,而不是DB本身。
数字2表示“我可以看到自己的变化;我看不到其他变化”
因此,如果我开始交易并进行更改,我可以看到它们。其他会话/连接的其他事务在我的TXN无法看到我的更改后启动