【发布时间】:2012-07-13 22:41:07
【问题描述】:
在transact-sql中,在“开始事务”和“提交事务”之间包含不同动作的目的是什么
我注意到,当函数中间抛出异常时,它不会回滚事务。 如果发生错误,如何回滚事务?
【问题讨论】:
标签: sql-server commit rollback
在transact-sql中,在“开始事务”和“提交事务”之间包含不同动作的目的是什么
我注意到,当函数中间抛出异常时,它不会回滚事务。 如果发生错误,如何回滚事务?
【问题讨论】:
标签: sql-server commit rollback
使用 try 和 catch 进行正确错误处理的最佳方法。然后根据错误在 catch 子句中执行操作,例如回滚 tran 等。
但是,如果您根本不想更改代码。请在执行代码之前指定以下内容。
set xact_abort on
这将导致事务自动回滚。但最好的解决方案是正确捕获和处理错误。
【讨论】: