在前面我们将事务定义为逻辑工作单元,即一组相关的SQL语句,它们要么作为一个单位被提交,要么作为一个单位被回滚。数据库理论对事务采用了更严格的定义,说明事务有4个基本的特性,称为ACID特性(ACID来自于下面列出的每个特性的首字母):
● 原子性(Atomic) 事务是原子的,这就是说一个事务中包含的所有SQL语句都是一个不可分割的工作单元。
● 一致性(Consist) 事务必须确保数据库的状态保持一致,这就是说事务开始时,数据库的状态是一致的;在事务结束时,数据库的状态也必须是一致的。
● 隔离性(Isolated) 多个事务可以独立运行,而不会彼此产生影响。
● 持久性(Durable) 一旦事务被提交之后,数据库的变化就会被永远保留下来,即使运行数据库软件的机器后来崩溃也是如此。