跳至主要內容

1.21 事务 🎉

刘春龙...大约 1 分钟数据库mysql

1.21 事务 🎉

事务是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。

事务是一个最小的不可再分的工作单元;通常一个事务对应一个完整的业务(例如银行账户转账业务,该业务就是一个最小的工作单元)

一个完整的业务需要批量的DML(insert、update、delete)语句共同联合完成

事务只和DML语句有关,或者说DML语句才有事务。这个和业务逻辑有关,业务逻辑不同,DML语句的个数不同

事务四大特征(ACID)

  • 原子性(ATOMICITY)

    • 事务中的操作要么都不做,要么就全做。
  • 一致性(CONSISTENCY)

    • 一个事务应该保护所有定义在数据上的不变的属性(例如完整性约束)。在完成了一个成功的事务时,数据应处于一致的状态。
  • 隔离性(ISOLATION)

    • 一个事务的执行不能被其他事务干扰。
  • 持久性(DURABILITY)

    • 一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。

事务类型

  • 显式事务

    • 需要我们手动的提交或回滚。

    • DML 语言中的所有操作都是显示事务操作。

  • 隐式事务

    • 数据库自动提交不需要我们做任何处理,同时也不具备回滚性。DDL、DCL 语言都是隐式事务操作

使用事务 💎

事务并发的问题与隔离级别 💎

上次编辑于:
贡献者: 刘春龙
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.7