数据库基础知识——事务与恢复系统
事务
什么是事务?
是由多个操作封装起来的一个执行单元,这个执行单元内的操作要么都做,要么都不做
事务的ACID特性
- 原子性(Atom) 事务内的操作要么都做,要么都不做。
- 一致性(Consistency) 事务执行后应保证数据库的一致状态,一致性保证事务的执行会将数据从一个正确状态变为另一个用户状态。
- 隔离性(Isolated) 事务的执行过程中不会被其它事务所影响。
- 持久性(Duration) 事务执行完后,对数据的改变是永久的。
事务并发执行时会产生的问题
-
脏读 事务A读取了另一个事务未提交的数据
事务A 事务B began transaction began transaction 金额=200+100 - 读取金额=300 金额=300-100 commit commit 结果 金额=200 结果金额=300