二、事务处理模型 例 BEGIN TRANSACTION IPDATE支付表SET帐户总额=帐户总额一n WHERE帐户名=“A UPDATE支付表SET帐户总额=帐户总额+n WHERE帐户名=“B COMMIT 2021/2/20 School of Information ChangJun
2021/2/20 School Of Information · ChangJun 11 二、事务处理模型 • 例: BEGIN TRANSACTION UPDATE 支付表 SET 帐户总额 = 帐户总额 - n WHERE 帐户名 = ‘A’ UPDATE 支付表 SET 帐户总额 = 帐户总额 + n WHERE 帐户名 = ‘B’ COMMIT
三、事务的特征 事务具有四个特性,简称ACID特性。 >原子性( Atomicity) 事务的原子性是指事务是数据库的逻辑 工作单位,事务中的操作要么都做,要么都 不做。 致性( Consistency) 事务一致性是指事务执行的结果必须是 使数据库从 致性状态变到另一个一致 性状态。 2021/2/20 School of Information ChangJun
2021/2/20 School Of Information · ChangJun 12 三、事务的特征 ➢ 原子性(Atomicity) ➢ 一致性 (Consistency) • 事务具有四个特性,简称ACID特性。 事务的原子性是指事务是数据库的逻辑 工作单位,事务中的操作要么都做,要么都 不做。 事务一致性是指事务执行的结果必须是 使数据库从一个一致性状态变到另一个一致 性状态
三、事务的特征 隔离性( Isolation) 事务的隔离性是指数据库中一个事务的 执行不能被其它事务干扰。 持久性( Durability) 事务的持久性也称为永久性 ( Permanence),指事务一旦提交,则其对数 据库中数据的改变就是永久的。 2021/2/20 School of Information ChangJun 13
2021/2/20 School Of Information · ChangJun 13 三、事务的特征 ➢ 隔离性 (Isolation) ➢ 持久性 (Durability) 事务的隔离性是指数据库中一个事务的 执行不能被其它事务干扰。 事务的持久性也称为永久性 (Permanence),指事务一旦提交,则其对数 据库中数据的改变就是永久的
三、事务的特征 保证事务的ACID特性是事务处理的重要 任务,可能遭到破坏的因素: 多个事务并发运行时,不同事务的操作交 叉执行。 RDBMS的并发控制机制 >事务在运行过程中被强行停止 RDBMs的恢复机制 2021/2/20 School of Information ChangJun 14
2021/2/20 School Of Information · ChangJun 14 三、事务的特征 • 保证事务的ACID特性是事务处理的重要 任务,可能遭到破坏的因素: ➢ 多个事务并发运行时,不同事务的操作交 叉执行。 ——RDBMS的并发控制机制 ➢ 事务在运行过程中被强行停止。 ——RDBMS的恢复机制
12,2并发控制 例如:假设有两个飞机订票点A和B,如果A、B两个订 票点恰巧同时办理同一架航班的飞机订票业务。其操作 过程及顺序如下: 1)A订票点(事务A)读出航班目前的机票余额数, 假设为10张。 2)B订票点(事务B)读出航班目前的机票余额数, 也为10张。 3)A订票点卖出6张机票,修改机票余额为10-6=4, 并将4写回到数据库中。 4)B订票点卖出5张机票,修改机票余额为10-5=5, 并将5写回到数据库中 2021/2/20 School of Information ChangJun 15
2021/2/20 School Of Information · ChangJun 15 12.2 并发控制 例如:假设有两个飞机订票点A和B,如果A、B两个订 票点恰巧同时办理同一架航班的飞机订票业务。其操作 过程及顺序如下: 1) A订票点(事务A)读出航班目前的机票余额数, 假设为10张。 2) B订票点(事务B)读出航班目前的机票余额数, 也为10张。 3) A订票点卖出6张机票,修改机票余额为10-6=4, 并将4写回到数据库中。 4) B订票点卖出5张机票,修改机票余额为10-5=5, 并将5写回到数据库中