Begin Transaction:开始一个事务; 
Commit Transaction:提交事务; 
Rollback Transaction:回滚事务。 
其中Commit Transaction 与Rollback Transaction 都必须有对应的Begin Transaction 才能正确被执行。 
如: 
Begin Tran 
…… 
Rollback Tran 
Commit Tran 
以上事务只执行了回滚操作。执行Commit Tran系统会返回3902错误,即@@Error=3902,COMMIT TRANSACTION 请求没有对应的 BEGIN TRANSACTION。 
Begin Tran 
…… 
Commit Tran 
Rollback Tran 
以上事务员执行了提交事务操作。执行Rollback Tran系统会返回3903错误,即@@Error=3903,ROLLBACK TRANSACTION 请求没有对应的 BEGIN TRANSACTION。 
实例:使用@@Error返回值来控制回滚 
设有表a,有字段num (int),name (varchar(20));表b,有字段num (int),Add (varchar(50))。以下是一个存储过程,使用了@@Error的返回值来控件事件回滚: 
- 本文标题: SQL事务回滚语法的问题及其解决的方法
- 文章分类:【SQLServer】
- 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.