事务四大特性

原子性(Atomicity)

原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的
操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何
影响。

一致性(Consistency)

事务开始前和结束后,数据库的完整性约束没有被破坏。比如 A 向 B 转账,不
可能 A 扣了钱,B 却没收到。

隔离性(Isolation)

隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个
用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。
同一时间,只允许一个事务请求同一数据,不同的事务之间彼此没有任何干扰。
比如 A 正在从一张银行卡中取钱,在 A 取钱的过程结束前,B 不能向这张卡转
账。

持久性(Durability)

持久性是指一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性
的,即便是在数据库系统遇到故障的情况下也不会丢失提交事务的操作。