zoukankan      html  css  js  c++  java
  • 事务

    一、什么是事务?
    能够保证数据一致的代码控制。它要么执行提交,要么回滚到事务的初始状态。

    二、事务的四大特性:ACID
    A - 原子性.——事务不可折开,要么都执行,要么都回滚,无中间状态。
    C - 一致性.——数据前后要一致。
    I - 隔离性.——事务在执行的过程中是不许外界干扰的。
    D - 持久性.——存在硬盘上的。

    三、事务的代码:
    定义事务的开始:begin transaction
    事务回滚:rollback
    事务提交:commit

    @@ERROR 最近一条语句是否执行成功。成功返回0,否则返回错误代号。
    例如:
    法一:使用@@ERROR和if判断来使用事务
    declare @t int --记录累计的错误信息
    set @t = 0
    begin tran --启动事务
    insert into Info values('p003','吴倩','0','n004','1990-8-12')
    set @t = @t +@@ERROR --累计错误信息
    insert into Info values('p006','张三','1','n004','1992-3-19')
    set @t = @t +@@ERROR --累计错误信息
    insert into Info values('p005','李四','0','n001','1991-12-24')
    set @t = @t +@@ERROR --累计错误信息

    if @t<> 0 --如果累计发现有错误 ,就回滚
    begin
    rollback
    end
    else --如果累计中没有发现错误,就提交
    begin
    commit
    end

    法二:使用try...catch....来使用事务
    begin tran
    begin try
    insert into Info values('p007','王五','0','n002','1991-4-1')
    insert into Info values('p009','张四','1','n004','1992-3-19')
    insert into Info values('p008','李九','0','n001','1991-12-24')
    commit
    end try
    begin catch
    rollback
    end catch

  • 相关阅读:
    kafka原理
    互斥和条件变量区别
    多线程-----Thread类与Runnable接口的区别
    String、StringBilder和StringBuffer之间的区别
    react native与原生的交互
    Typescript 常见写法
    react项目中的注意点
    js中的正则表达式
    前端总结(一)
    前端性能的优化
  • 原文地址:https://www.cnblogs.com/qianxiaojinnian/p/4572948.html
Copyright © 2011-2022 走看看