KM.*_*KM. 25 sql-server error-handling transactions sql-server-2005
如果你小心并且在所有内容周围使用TRY-CATCH,并且你真的需要使用以下错误回滚:
SET XACT_ABORT ON
Run Code Online (Sandbox Code Playgroud)
换句话说,是否有任何错误,TRY-CATCH将错过SET XACT_ABORT ON将处理?
gbn*_*gbn 35
请记住,TRY-CATCH无法捕获或不捕获错误XACT_ABORT.
但是,SET XACT_ABORT ON不会影响错误的捕获.它确实保证任何事务都回滚/注定失败.当"关闭"时,您仍然可以选择提交或回滚(以xact_state为准).这是SQL 2005 for的主要行为更改XACT_ABORT
如果客户端命令超时启动并且客户端发送"abort"指令,它还可以删除锁等.如果没有SET XACT_ABORT,如果连接保持打开,则可以保留锁定.我的同事(MVP)和我在年初彻底测试了这一点.
| 归档时间: |
|
| 查看次数: |
24609 次 |
| 最近记录: |