zoukankan      html  css  js  c++  java
  • 事务

    1、begin transaction:开始事务。
    2、commit transaction:提交事务。
    3、rollback transaction:回滚事务。


    基本用法
    begin tran -- 开启事务,transcation 的简写
    2 declare @errorNo int --定义变量,用于记录事务执行过程中的错误次数
    3 set @errorNo=0
    4 begin try
    5 update Student set C_S_Id='2' where S_StuNo='003'
    6 set @errorNo=@errorNo+@@ERROR
    7 select 'S_StuNo=003 已经修改啦'
    8
    9 update Student set C_S_Id='3' where S_StuNo='002'
    10 set @errorNo=@errorNo+@@ERROR -- @@ERROR 系统全局变量,记录错误次数,出现一次错误 @@ERROR 值+1
    11 select 'S_StuNo=002 已经修改啦'
    12
    13 if(@errorNo>0)
    14 begin
    15 --抛出自定义的异常,在最后的catch块中统一处理异常
    16 RAISERROR(233333,16,3)
    17 end
    18
    19 end try
    20 begin catch
    21 select ERROR_NUMBER() errorNumber, --错误代码
    22 ERROR_SEVERITY() errorSeverity, --错误严重级别,级别小于10 try catch 捕获不到
    23 ERROR_STATE() errorState, --错误状态码
    24 ERROR_PROCEDURE() errorProcedure, --出现错误的存储过程或触发器的名称
    25 ERROR_LINE() errorLine, --发生错误的行号
    26 ERROR_MESSAGE() errorMessage --错误的具体信息
    27
    28 if(@@trancount>0) -- @@trancount 系统全局变量,事务开启 @@trancount 值+1,判断事务是否开启
    29 begin
    30 rollback tran; -- 回滚事务
    31 end
    32 end catch
    33
    34 if(@@trancount>0)
    35 begin
    36 commit tran; -- 提交事务
    37 end
    38
    39 select * from Student

  • 相关阅读:
    程序从命令行接收多个数字,求和之后输出结果。
    动态规划(1)
    软件工程个人作业(4)
    冲刺2 01
    构建之法
    水王
    大道至简第七章读后感
    构建之法03
    团队冲刺第四天
    团队冲刺第三天
  • 原文地址:https://www.cnblogs.com/ZaraNet/p/9434066.html
Copyright © 2011-2022 走看看