Sql中创建事务处理

Create Procedure  MyProcedure
    AS
       Begin
           Set    NOCOUNT    ON; 
           Set XACT_ABORT ON; --这句话非常重要
           begin try
               Begin  Tran   --开始事务
               
               insert into userinfo(username,userpwd,RegisterTime) values('admin','admin',getdate())
               insert into userinfo(username,userpwd,RegisterTime) values('jack','jack',getdate())

               Commit Tran       --提交事务
            end try
            begin catch
                --在此可以使用xact_state()来判断是否有不可提交的事务,不可提交的事务

                --表示在事务内部发生错误了。Xact_state()有三种值:-1.事务不可提交;

                 --1.事务可提交;0.表示没有事务,此时commit或者rollback会报错。

                 if xact_state()=-1
                     rollback tran;
            end catch
      Set XACT_ABORT OFF;
End

  

转载于:https://www.cnblogs.com/luoyangcn/p/4224788.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值