使用 ROLLBACK TRANSACTION 清除交易開始之後的所有資料修改,或清除儲存點之前的所有資料修改。
SET XACT_ABORT ON
BEGIN TRANSACTION
BEGIN TRY
-- 執行的程式碼
END TRY
BEGIN CATCH
--如果程式執行有錯誤時,將成功修改的資料全部還原
IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION
RETURN
END CATCH
SET XACT_ABORT OFF
IF @@TRANCOUNT > 0 COMMIT TRANSACTION
參考連結
http://msdn.microsoft.com/zh-tw/library/ms181299.aspx
http://wl-ldy.iteye.com/blog/1161744
http://www.dotblogs.com.tw/dc690216/archive/2009/11/06/11455.aspx
SET XACT_ABORT ON
BEGIN TRANSACTION
BEGIN TRY
-- 執行的程式碼
END TRY
BEGIN CATCH
--如果程式執行有錯誤時,將成功修改的資料全部還原
IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION
RETURN
END CATCH
SET XACT_ABORT OFF
IF @@TRANCOUNT > 0 COMMIT TRANSACTION
參考連結
http://msdn.microsoft.com/zh-tw/library/ms181299.aspx
http://wl-ldy.iteye.com/blog/1161744
http://www.dotblogs.com.tw/dc690216/archive/2009/11/06/11455.aspx
留言
張貼留言