[點晴永久免費OA]SQL Server事務及回滾事務
當前位置:點晴教程→點晴OA辦公管理信息系統
→『 經驗分享&問題答疑 』
第一種:
declare @iErrorCount int set @iErrorCount = 0 begin tran Tran1 insert into t1(Id, c1) values(1,''1'') set @iErrorCount=@iErrorCount+@@error insert into t1(Id, c1) values(''XX2'',''2'') set @iErrorCount=@iErrorCount+@@error if @iErrorCount=0 begin COMMIT TRAN Tran1 --執行事務 end else begin ROLLBACK TRAN Tran1 --回滾事務 end 第二種: Begin Try Begin Tran Tran1 insert into t1(Id, c1) values(1,''1'') insert into t1(Id, c1) values(''XX2'',''2'') --此句產生錯誤 COMMIT TRAN Tran1 END Try Begin Catch raiserror 50005N''出錯了'' ROLLBACK TRAN Tran1 ---出錯后調用回滾 END Catch 第三種: SET XACT_ABORT ON ----語句產生運行時錯誤,則整個事務將終止并回滾。 Begin Tran INSERT INTO t1(Id, c1) VALUES(1,''1'') INSERT INTO t1(Id, c1) VALUES(''XX2'',''2'') --此句產生錯誤時,就會回滾整個事務 Commit Tran 該文章在 2020/11/13 11:08:34 編輯過 |
關鍵字查詢
相關文章
正在查詢... |