SQL的事务回滚操作带案例分析
?
SET XACT_ABORT on?
BEGIN TRAN?
INSERT INTO [PDA_Action] VALUES ('採購入庫1')?
INSERT INTO [PDA_Action] VALUES ('採購入庫2')?
SELECT 1/0? /* 除數為0錯誤 */?
INSERT INTO [PDA_Action] VALUES ('採購入庫3')?
INSERT INTO [PDA_Action] VALUES ('採購入庫4')?
COMMIT TRAN
?
?
?
對于有select的語句的回滾,用以下這樣的
Begin Try
?Begin Tran Tran1
??INSERT INTO [PDA_Action] VALUES ('採購入庫1')?
??INSERT INTO [PDA_Action] VALUES ('採購入庫2')?
??SELECT 1/0? /* 除數為0錯誤 */?
??INSERT INTO [PDA_Action] VALUES ('採購入庫3')?
??INSERT INTO [PDA_Action] VALUES ('採購入庫4')?
??? COMMIT TRAN Tran1
END Try
Begin Catch
??? ROLLBACK TRAN Tran1???? ---出錯后調用回滾
??? --select 0
END Catch
總結
以上是生活随笔為你收集整理的SQL的事务回滚操作带案例分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里京东带头打劫,下一个被干掉的就是你
- 下一篇: 修改oracle用户登录密码