存储过程中事务的使用

存储过程中事务的使用
存储过程中事务的使用方法 收藏

ALTER PROCEDURE dbo.PR_AddDPT

 

    @dptName varchar(50),

    @dptWorker int

   

AS

    SET NOCOUNT ON

   

    begin tran --事务处理开始

   

    declare @insertError int,@updateError int

   

    insert into [dptInfo] values(@dptName,@dptWorker) --插入语句操作正常

   

    select @insertError=@@error

   

   

    update [dptInfo] set dptname='fantasy' where id=100 --更新语句由于id=100的记录不存在导致操作异常,因此事务会回滚到事务开始之前的位置,即前面插入的那条记录会消失

   

    select @updateError=@@error

   

    if(@insertError=0 and @updateError=0) --如果事务顺利完成没有异常

        commit tran --事务完成

    else --如果有异常

        rollback tran --事务回滚

   

    SET NOCOUNT OFF

    

    RETURN

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值