zoukankan      html  css  js  c++  java
  • SQL server从入门精通---- 事务

    -------------事务--------------
    --我的理解(执行几条语句时,只要有一条语句执行不成功,其他的语句都不够被执行)
    
    --事务:将多个操作当做一个独立的逻辑单元的执行方式为事务------
    --特点:多个操作只有在都执行成功时才算成功,只要有一个执行失败那应该整体就属于失败,成功了可以提交,失败了可以回滚
    
    语法
    begin transaction tr_insert --开始事物(名称随便取
    begin try
     insert into Q_user(uLogName) values('dsf')
     insert into Q_user(uLogName) values('dsf') 
     --违反了 UNIQUE KEY 约束“UQ__Q_user__07E32C94386667D8”。不能在对象“dbo.Q_user”中插入重复键。重复键值为 (dsf)。会报错
     --全部成功提交事务
     commit tran tr_insert --这里的名字
    end try
    begin catch
    --报错获取异常回滚语句块
     rollback tran
    end catch
    
    select * from Q_user
    
    create proc execTran
    @sql1  nvarchar(1000),
    @sql2  nvarchar(1000),
    @rtn nvarchar(1000) output
    as
    begin tran tr_exec2
    begin try
        exec @sql1
        exec @sql2
        set @rtn='success'
        commit tran execTran
    end try
    begin catch
        set @rtn=@@ERROR
        rollback tran tr_exec2
    end catch
    go
    
    drop proc  execTran
    
    declare @rtn nvarchar(100)
    exec execTran 'insert into Q_user values(,,,,,,,,)','sql2',@rtn output
    print @rtn
  • 相关阅读:
    一些基础的前端技术面试问题
    HTTP与HTTPS区别
    XML与JSON
    js的内置对象
    二分法查找
    img下面的留白解决
    大家好
    HEOI2020游记
    CSP-S2019游记
    省选模拟八十六 题解
  • 原文地址:https://www.cnblogs.com/CodeTaotao/p/4811971.html
Copyright © 2011-2022 走看看