我一直在整理 SQL Server 中的整个嵌套事务,并且对嵌套事务的行为有了一些了解:
- 当嵌套事务时,只有
最外层提交实际上会
犯罪。
- 嵌套时“Commit Trans txn_name”
,将始终适用于最里面
交易,即使 txn_name 指的是
到外部事务。
- “ROLLBACK TRAN”(无名),即使在
内部事务,将回滚
所有交易。
- “ROLLBACK TRAN txn_name” - txn_name 必须
参考最外面的 txn 名称。
如果没有,就会失败。
鉴于这些,命名交易有什么好处吗?您不能使用它来针对特定事务,无论是提交还是回滚。
仅用于代码注释目的吗?
Thanks,
Yoni
实际上,它只是程序员的辅助回忆录。如果您正在处理具有多个内部事务的 Tx,则为每个事务指定有意义的名称可以帮助您确保事务正确嵌套,并可能捕获逻辑错误。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)