zoukankan      html  css  js  c++  java
  • mysql中的事务

    一、事务的作用

      事务是指一系列将要发生的连续的操作。

      事务安全是为了保证一系列操作的结果保持同步,保证数据的完整性。

      开启事务后,操作的结果会先保存到事务日志中,等操作完成提交事务后,才会修改表中的数据。

      注意:只有innodb存储引擎和bdb存储引擎才支持事务安全。

    二、事务使用

    start transaction;    -- 开启事务
    
    -- SQL语句1...
    
    savepoint sp1;        -- 设置回滚点
    
    -- SQL语句2...
    
    -- 如果操作失败 可以用rollback退回到回滚点
    
    rollback to sp1;
    
    -- SQL语句3...
    
    -- 操作完成后,用commit提交事务
    commit;

    三、自动事务提交

      事务是否自动提交由系统变量autocommit来控制,1为开启,0为关闭。默认是开启状态。

    -- 设置自动事务提交
    set autocommit := 0;  -- mysql中 = 一般用于比较,  := 才是赋值

    四、事务的特性--ACID
      A: atomic, 原子性, 整个事务的操作是一个整体,不可分割,要么全部成功,要么全部失败。

      C: consistency, 一致性,事务操作前后,数据表中的数据没有变化。

      I: isolation, 隔离性, 不同的事务操作是相互隔离,不受影响的。

      D: durability, 持久性, 数据一旦提交, 就不会再改变。

      锁机制:innodb默认是行锁, 但当事务操作的过程中,没有使用到索引,那么就会自动升级为表锁,全表检索数据。

  • 相关阅读:
    14.3.1选择选项
    14.3 选择框表单
    14.2.4HTML5约束API验证
    input标签之外是否一定添加form标签
    14.2.3自动切换焦点
    php设计模式---抽象模式模式
    php设计模式---简单工厂模式
    git基本教程,每天更新
    第5章 卷积神经网络
    第3章 深度学习基础
  • 原文地址:https://www.cnblogs.com/pengyin/p/6388110.html
Copyright © 2011-2022 走看看