第七章事务处理技术数据库恢复技术事务-用户定义的一个数据库操作序列,这些操作要么都做要么都不做,是不可分割的。事务是 DBMS 中的基本执行单位; 事务是恢复和并发控制的基本单位如何定义事务?显式定义方式 BEGIN TRANSACTION BEGIN TRANSACTION SQL 语句 1 SQL 语句 1 SQL 语句 2 SQL 语句 2 ………… COMMIT ROLLBACK ?隐式方式–当用户没有显式地定义事务时, – DBMS 按缺省规定自动划分事务? COMMIT –事务正常结束–提交事务的所有操作(读+更新) –事务中所有对数据库的更新永久生效? ROLLBACK –事务异常终止–事务运行的过程中发生了故障,不能继续执行–回滚事务的所有更新操作–事务滚回到开始时的状态事务的特性 ACID 特性 A( 原子性)-不可分割的逻辑工作单位。 C(一致性)-事务要保证数据库从一个一致性状态到另一个一致性状态。 I(隔离性)-事务内部的操作对其他事务是隔离的。 D( 持久性)-MIT 后,对数据库的改变的持久性。 1. 原子性?事务是数据库的逻辑工作单位–事务中包括的诸操作要么都做,要么都不做 2. 一致性事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。一致性状态: 数据库中只包含成功事务提交的结果不一致状态: 数据库中包含失败事务的结果一致性与原子性银行转帐:从帐号 A中取出一万元,存入帐号 B。–定义一个事务,该事务包括两个操作–这两个操作要么全做,要么全不做?全做或者全不做,数据库都处于一致性状态。?如果只做一个操作,数据库就处于不一致性状态。 B=B+1 A=A-1 BA 3. 隔离性对并发执行而言一个事务的执行不能被其他事务干扰?一个事务内部的操作及使用的数据对其他并发事务是隔离的?并发执行的各个事务之间不能互相干扰 T1 的修改被 T2 覆盖了! 读 A=16 A← A-3 写回 A=13 ①读 A=16 ②③ A← A-1 写回 A=15 ④ T 2T 1
7事务处理技术 来自淘豆网www.taodocs.com转载请标明出处.