Pet*_*hev 15 database sql-server transactions nested-transactions
我从未理解嵌套事务的好处.提交嵌套事务不会提交任何内容 - 它只会减少@@TRANCOUNT.并ROLLBACK回滚一切.
BEGIN TRANSACTION
//do an update
BEGIN TRANSACTION
//do an insert
COMMIT TRANSACTION
COMMIT TRANSACTION
Run Code Online (Sandbox Code Playgroud)
与此有什么不同:
BEGIN TRANSACTION
//do an update
//do an insert
COMMIT TRANSACTION
Run Code Online (Sandbox Code Playgroud)
请举例说明为什么要使用嵌套事务以及它们如何产生影响.
问候,Petar
嵌套事务允许您的代码调用其他代码(例如SP)中,它使用交易本身,而无需实际提交的事务时,他们提交.
也就是说,您可以使用安全点在事务内部回滚.
有一篇专门针对此的CodeProject文章.