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   --结束异常处理

  • 相关阅读:
    pyCharm专业版下载以及永久破解2099年过期
    win10安装最新的python3解释器
    Ubuntu软件源更换
    Ubuntu安装软件命令
    Target runtime Apache Tomcat 6.0 is not defined
    ajaxFileUpload 报这错jQuery.handleError is not a function
    怎样编写高质量的Java代码
    java 内存监控工具 jstat jmap
    jquery中attr和prop的区别
    javax.mail.MessagingException: 501 Syntax: HELO hostname
  • 原文地址:https://www.cnblogs.com/Lxxv5/p/15433844.html
Copyright © 2011-2022 走看看