文章目录
什么是事务,为什么需要事务
在 MySQL 中,事务是由一条或多条 SQL 组成的单位,在这个单位中所有的 SQL 共存亡,有点有福同享,有难同当的意思。要么全部成功,事务顺利完成;要么只要有一个 SQL 失败就会导致整个事务失败,所有已经做过的操作回退到原始数据状态。
用日常细说事务的特性
首先我们先说一下事务的四个特性:ACID。
- A:原子性(atomicity),一个事务要么全都成功,要么全都失败
- C:一致性(consistency),在事务的整个生命周期里,查询的数据是一致的,保证数据库不会返回未提交的事务的数据
- I:隔离性(isolation),一个事务所做的操作,在最终提交前,对其他事务是不可见的,保证事务与事务之间不会冲突
- D:持久性(durability),只要事务提交,数据就不会丢失,即使系统崩溃,事务也已经完成
在日常生活中有很多的事情就能体现为数据库中的事务。比如“转账”,下面我们就具体展开,你就可