数据库事务特性初探
在使用数据库进行业务开发时,常常提到“事务”这一概念。这里的事务指的是对数据库的一组读写操作,并且这一系列操作需要具有 ACID 特性。
事务特性
ACID 由 Atomicity(原子性)、Consistency(一致性)、Isolation(隔离性)、Durability(持久性)四种特性组成。
Atomicity(原子性):构成事务的一组读写操作要么全部成功,要么全部失败。在成功提交时,数据修改落到数据库中,事务中的操作全部成功。当出现失败时,事务回滚将所有数据恢复到执行前的状态,所有操作全部失败。
Consistency(一致性):在数据库执行后,无论成功还是失败,数据库的完整性不会被破坏。数据库中的数据持续满足数据定义给出的要求。
Isolation(隔离性):在多个事务并发执行时,他们之间的干扰要满足一定的要求。这些不同的要求构成了不同的隔离级别。隔离级别包括:读未提交、读已提交、可重复读、可串行化。
Durability(持久性):在事务成功提交后,即使数据库管理系统发生故障,在恢复运行后,事务中提交的修改也不会丢失。