SQL
数据库管理系统在写入/更新资料过程中为保证事务是正确可靠的,其必须具备 ACID 特性。
ACID
- A: atomicity(原子性) - 一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。
- C: consistency(一致性) - 在事务开始之前和事务结束以后,数据库的完整性没有被破坏。即从一个一致性状态转换到另一个一致性状态。
- I: isolation(隔离性) - 当两个或者多个事务并发访问(此处访问指查询和修改的操作)数据库的同一数据时所表现出的相互关系。通常来说,一个事务所做的修改在最终提交以前,对其他事务是不可见的。
- D: durability(持久性) - 在事务完成以后,该事务对数据库所作的更改便持久地保存在数据库之中,并且是完全的。
符合 ACID 的典型例子有银行转账,整个过程称为一个事务,具有 ACID 特性。
Reference
- ACID - 维基百科,自由的百科全书
- 《高性能 MySQL》