SQL Server 事务与并发控制详解
1. 分布式与本地事务
分布式事务语法也涵盖了本地事务。设置配置选项 REMOTE PROC TRANS 会自动将 BEGIN TRANSACTION 命令升级为 BEGIN DISTRIBUTED TRANSACTION 命令。如果经常使用分布式事务,这个设置很有用。若未设置该选项,远程命令会执行,但不会成为当前事务的一部分。
2. 显式与隐式事务
2.1 自动提交事务
每个 SQL 语句都在事务中执行。即使没有使用 COMMIT TRANSACTION 语句显式开启事务,SQL Server 也会在每个语句开始时自动开启一个新事务,并根据是否发生错误来提交或回滚。这就是自动提交事务。
2.2 隐式事务设置
SQL Server 提供了 SET IMPLICIT_TRANSACTIONS 设置来改变自动提交事务的行为。当该设置开启,且执行上下文不在使用 BEGIN TRANSACTION 显式声明的事务中时,执行以下命令会自动(逻辑上)执行 BEGIN TRANSACTION : ALTER TABLE 、 FETCH 、 REVOKE 、 CREATE 、 GRANT 、 SELECT
超级会员免费看
订阅专栏 解锁全文

6761

被折叠的 条评论
为什么被折叠?



