SQL语言总结——事务

事务

  1. 概念:一组相互捆绑共同完成操作的执行单元

  2. 事务属性:ACID

  • 原子性(Atomicity):语句共同操作
  • 一致性(Consistency):事务执行前后整体不改变
  • 隔离性(Isolation):一个事务执行不能被其他事务干扰
  • 持久性(Durability):事务提交后即生效,不可更改
  1. 事务使用方法
  • 事务的开启:SET autocommit = 0; start transaction;
  • 编写事务语句:语句1;语句2;…
  • 事务结束:commit;或者 rollback;
  1. 事务隔离:避免多个事务相互冲突

    • 常见的并发问题:

      • 脏读:读出了无效的,其他事务未提交的数据(脏数据)
      • 不可重复读:一个事务内,多次查询出现了不同的结果;重点在数据被修改
      • 幻读:读到的数据条数不一样,重点在新增和删除
        在这里插入图片描述
    • 隔离级别(MySQL):

      • Read Uncommited:允许事务读取其他未提交事务的变更,脏读,不可重复读,幻读都会出现
      • Read Commited:只允许事务读取其他事务提交的更改,可以避免脏读,但有不可重复读,幻读
      • Pepeatable Read:在此事务持续期间不允许其他事务更改该字段,但可读,可出现幻读
      • Serialization:在此事务期间禁止其他事务的任何操作

猜你喜欢

转载自blog.csdn.net/weixin_40106401/article/details/106029061