2010-03-15 60 views

回答

4

SQL Server中的默认事务模式是autocommit,除非另有指定。这意味着每个语句都在自己的事务中运行;如果一个失败,所有前面的陈述仍然成功。

您可以使用BEGIN TRAN语句(显式事务)或SET IMPLICIT_TRANSACTIONS ON(打开隐式事务)来更改此设置。请注意,如果启用隐式事务,则仅隐含BEGIN - 您仍需明确指定COMMIT

使用隐式事务通常也被认为是不好的做法;由于事务性边界不清晰可见,它往往导致buggier脚本。