首页 > 其他 > 详细

事物回滚

时间:2016-01-26 18:14:08      阅读:176      评论:0      收藏:0      [点我收藏+]

BEGIN tran Price
DECLARE @tran_error int;
SET @tran_error=0;
    BEGIN try
    UPDATE t_PortGrant SET PortPrice =‘200‘ WHERE StageID=73 AND StaffID=‘18440‘ and BasePID=‘1501‘
    set @tran_error=@tran_error+@@error;
    update t_BaseProduct SET ImagePrice=‘200‘ where StageID=73 and BasePID=‘1544401‘
    set @tran_error=@tran_error+@@error;
    end try
BEGIN CATCH
    PRINT ‘出现异常,错误编号:‘ + convert(varchar,error_number()) + ‘,错误消息:‘ + error_message()
    SET @tran_error = @tran_error + 1
END CATCH


IF(@tran_error > 0)
    BEGIN
        --执行出错,回滚事务
        ROLLBACK TRAN;
        PRINT ‘价格修改失败!‘;
    END
ELSE
    BEGIN
        --没有异常,提交事务
        COMMIT TRAN;
        PRINT ‘价格修改成功!‘;
    END

 

其中某一条SQL语句执行出错时,则事物回滚,两天语句都不会执行操作

事物回滚

原文:http://www.cnblogs.com/starts/p/5160900.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!