L17_Oracle数据库编程_QUST.pdf

事务与并发控制 事务 示例 ? 设从帐号A中拨一笔款X到帐号B ,正常的执行过程是: ? 查看帐号A上是否有足够的款数,即余额 ≥ X ? – 若余额 X, 则给出提示信息,中止执行 – 若余额 ≥ X ,则执行下面三步 ? 在A中记上一笔支出,从余额中减去 X ? 把值X传到B上 停电 ? 在B中记上一笔收入,在余额上加X ,结束 事务的基本概念 ? 事务是用户定义的数据操作系列,这些操作作为一个完整 的工作单元,一个事务内的所有语句被作为一个整体,要 么全部执行,要么全部不执行 ? 例如:对于A帐户转帐给B帐户2000元钱,这个转账活动 包含两个操作: – 第一个操作:A帐户 -2000 – 第二个操作:B帐户 +2000 事务的基本概念 ? 事务可以保证在一个事务中的全部操作或者全部成功,或 者全部失败 事务标记: BEGIN TRANSACTION 事务开始 … … COMMIT 或 ROLLBACK 事务提交: 事务回滚(中止): 事务完成了其包含的 撤消已做的所有操作, 所有活动,正常结束 回到事务开始时的状态 示例 A =10000 初始状态 当前账 B =3000 一致的状态 户数据 账户A :10000 A =A-2000 事务T 1: 账户B :3000 B =B+2000 读→修改→写 修改数据库

文档评论(0)

1亿VIP精品文档

相关文档