1

SQL Server 2008 R2 支持嵌套事务,但我使用的是 SQL Server 2008 标准版。请让我知道它是否支持嵌套事务?

4

1 回答 1

4

没有任何版本的 SQL Server 支持嵌套事务。好像有,但是没有

为什么?

  • ROLLBACK可以回滚所有事务
  • 一些错误“毁灭”了事务堆栈
  • SET XACT_ABORT ON进行隐式回滚

所以即使有保存点和命名事务,你仍然不能真正嵌套。例如,以下链接使用保存点使此模式无效:http ://rusanu.com/2009/06/11/exception-handling-and-nested-transactions/ 。我不想依赖这个,因为你真的需要SET XACT_ABORT ONSQL Server

因此,我在这里启用存储过程嵌套的答案:包含 TRY CATCH ROLLBACK 模式的嵌套存储过程?

这链接到权威的 Paul S. Randal:http ://www.sqlskills.com/blogs/paul/a-sql-server-dba-myth-a-day-2630-nested-transactions-are-real/

于 2013-05-30T13:39:43.740 回答