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

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。