sql事务不回滚

时间:2012-07-14 05:32:35

标签: sql-server commit rollback

在transact-sql中,在“begin transaction”和“commit transaction”之间包含不同操作的目的是什么

我注意到当函数中间抛出异常时它不会回滚事务。 如果发生错误,如何回滚事务?

1 个答案:

答案 0 :(得分:2)

使用try和catch进行正确错误处理的最佳方法。然后根据roll back tran等错误在catch子句中执行操作。

但是,如果您根本不想更改代码。请在执行代码之前指定以下内容。

set xact_abort on

这将导致事务的自动回滚。但最好的解决方案是正确捕获和处理错误。