【发布时间】:2013-01-10 22:51:53
【问题描述】:
BEGIN TRANSACTION
BEGIN TRY
--DO_ACTION
--COMMIT_TRANSACTION
END TRY
BEGIN CATCH
--LOG_ERROR (e.g. INSERT INTO ErrorTable (ERROR_MESSAGE(), ...))
--ROLLBACK
END CATCH
我正在尝试执行以下操作,但是 ROLLBACK 命令正在回滚我的错误记录,因此“ErrorTable”中没有任何内容。
在这种情况下,我将如何去做我想做的事情?
【问题讨论】:
-
您是否尝试过切换语句的顺序。先回滚再登录?
-
我也在尝试捕获 ERROR_MESSAGE() 。我现在尝试更改订单。
-
@Icarus,这行得通。我交换了项目。我先回滚,然后记录错误。谢谢!
标签: sql tsql transactions try-catch