2

在transact-sql中,在“开始事务”和“提交事务”之间包含不同动作的目的是什么

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

4

1 回答 1

2

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

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

set xact_abort on

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

于 2012-07-14T06:22:45.623 回答