0
我有一個過程,它是整理以下處理Uncommitable交易SQL SERVER
BEGIN TRY
BEGIN TRAN
...transactins A....
BEGIN TRY
.... Transaction B ....
END TRY
BEGIN CATCH
.... Set variables and print messages ....
END CATCH
....Transaction C
COMMIT TRAN
END TRY
BEGIN CATCH
ROLLBACK TRAN
...Transaction D
END CATCH
的事務B被拋出錯誤的,並且由於這種工藝要到uncommitable狀態,並拋出下面的錯誤。我已檢查過XACT_STATE()值-1
消息3930,級別16,狀態1,過程xxxxxxxx,行70 當前事務無法提交併且不能支持寫入日誌文件的操作。回滾事務。
是否有任何其他方式如何跳過事務B和執行業務C
我在wesites中看到了嵌套事務可以提供幫助的情景。但我無法實現它。你有什麼想法在這個相關嗎? – Santy
從[文檔](http://msdn.microsoft.com/zh-cn/library/ms189336.aspx)中提到的有關嵌套事務的一個關鍵點是,提交內部事務被SQL Server數據庫引擎忽略。事務根據在最外層事務結束時採取的動作提交或回滾,如果外層事務被提交,則內層嵌套事務也被提交;如果外層事務被回滾,則所有內層事務也被回滾,不管內部交易是否單獨承諾。「 –
謝謝Joe提供的寶貴信息... – Santy