zoukankan      html  css  js  c++  java
  • sql-事务

    sql事务:

    事务Tran(Transaction)是并发控制的单位,是用户定义的一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位。
    通过事务,SQL Server能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性

    Begin Transaction(Tran)  --开始事务

    Rollback Transaction(Tran) --回滚事务

    Commit Transaction(Tran)  --提交事务

    简单写法:

    Begin tran

    update stud set Name='王五' where Name='张三'  --正确语句
    update YX set ID='王五' where ID='2'              --错误语句(因为我这里ID字符类型是int类型)
    rollback tran

    因为计算机执行语句是从上到下开始执行,如果不加rollback tran,执行完第一个语句,开始执行第二个语句会报错,但是这时张三已经改成王五了,第二个语句却没有执行,却失了数据的一致性。

    加了rollback tran 从上到下开始执行,执行完第一个语句,第二个语句报错时,是会回滚第一个语句修改的数据的(张三就还是张三),这样保持了数据的一致性。

    存储过程写法:

    create proc up   --创建存储过程‘up’
    as
    begin try   --异常捕捉
    Begin Tran  --开始事务
    update stud set Name='王五' where Name='张三'   --正确语句
    update YX set ID='王五' where ID='2'                 --错误语句因为id是int类型
    commit tran      --提交事务
    end try    --结束捕捉
    begin catch   --异常处理
    rollback tran   --回滚事务
    end catch   --结束异常处理

  • 相关阅读:
    IDEA使用笔记
    面试题整理
    java中的hashCode()方法
    动态规划算法实现部分——0/1背包问题
    算法课堂笔记6—近似算法
    Photoshop CC 2015
    unity学习笔记1--Space Shooter
    转载---sql之left join、right join、inner join的区别
    java连接Fastdfs图片服务器上传失败的解决方法
    Eclipse使用笔记
  • 原文地址:https://www.cnblogs.com/Lxxv5/p/15433844.html
Copyright © 2011-2022 走看看