数据库一致性与事务管理.ppt
《数据库一致性与事务管理.ppt》由会员分享,可在线阅读,更多相关《数据库一致性与事务管理.ppt(16页珍藏版)》请在三一办公上搜索。
1、第19章 数据库一致性与事务管理,数据库中的数据是每时每刻都有可能发生变化的。但是这种变化必须是可以接受的和合理的。即数据必须保持一致性。事务是保证数据一致性的重要手段。本章将从以下几个方面讲述数据一致性。什么是数据库一致性和事务Oracle中的事务事务的属性和隔离级别事务的处理原则通过本章的学习,读者可以对数据一致性有清晰的认识,并了解Oracle中的事务处理原则。,19.1 数据一致性和事务,用户对数据库的操作是复杂多变的。这些复杂的动作可能是一个逻辑整体,如果处理不当极易造成数据不一致。同属一个逻辑整体的操作应该作为一个事务进行处理,从而避免出现数据不一致性。,19.1.1 Oracle
2、中的数据一致性,数据库是现实世界的反映。例如,一个存储了多家连锁店铺库存信息的数据库,如果需要进行货物调配,则需要进行数据更新。从A店调出的货物送至B店,那么A店对应的库存量应该进行削减,B店库存进行相应增加。在数据库中的实际操作应该是两条SQL语句,一条语句减少A店库存,另外一条增加B店库存。但是,数据库有可能抛出这样那样的异常,例如,第一条语句执行完毕,突然断电,或者第二条语句由于其他原因(如表本身的约束)而没有执行成功,就造成了数据不符合实际情况,即实际库存与数据库记录不符。类似的场景还有很多,但作为存储基础数据的数据库,必须避免任何犯错的可能,即必须保持数据一致性。,19.1.2 Or
3、acle中的事务,事务是保证数据一致性的重要手段。试图改变数据库状态的多个动作应该视作一个密不可分的整体。无论其中经过了多么复杂的操作,该整体执行之前和执行之后,数据库均可保证一致性。整个逻辑整体即使一个事务。,19.2 Oracle中的事务处理,一个事务的生命周期包括,事务开始、事务执行和事务结束。在Oracle中,并不会显式声明事务的开始,而是由Oracle自行处理。事务的结束可以利用commit或者rollback命令。本节将从以下角度讲述Oracle中的事务处理。利用Commit命令结束事务利用Rollback命令结束事务事务属性和隔离级别,19.2.1 利用commit命令界定事务,
4、事务的开始无需显式声明,在一个会话中,一次事务的结束便意味着新事务的开始。事务的结束可以利用commit命令,如示例19-1所示。【示例19-1】利用commit命令界定事务。在表warehouse中存储了仓库及库存信息,如下所示。SQL select*from warehouse;,19.2.2 利用rollback命令界定事务,rollback命令用于回滚事务内的所有数据修改,并结束事务。在示例19-1中,无论进行了多少次调仓,使用rollback命令将忽略所有操作。【示例19-2】利用rollback命令界定事务。SQL update warehouse set stock=stock-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 一致性 事务管理
链接地址:https://www.31ppt.com/p-5985452.html