12.1.2 事务的特性

2025-07-29 13:03:32 更新


特性

说明

备注

1

原子性

(Atomicity)

事务所有操作在数据库中,要么全做要么全不做

银行转账的两个操作必须作为一个单位来处理

2

一致性

(Consistency)

数据不会因为事务执行而被破环

一致性是对现实世界真实状态的描述

一致性由DBMS完整性约束机制自动完成,复杂事务由程序完成

银行转账业务一旦执行,最终应该账目平衡。

执行过程中会出现瞬间的不一致状态(A转给B,A已扣款B尚未收到),不能被其他事务访问

3

隔离性

(Isolation)

一个事务的执行不能被其他事务干扰。

事务执行中数据不一致性状态出现时,不能让其他事务读取到不一致的数据

4

持久性

(Durability)

事务一旦提交,对数据库的改变必须是永久的(即便系统故障)

转账事务执行成功后,A、B账户余额就是新值,在没有对其修改前保持不变;即使系统出现故障,也应恢复到原始值。