当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

《Oracle数据库》课程教学资源(PPT课件讲稿)数据库一致性与事务管理

资源类别:文库,文档格式:PPT,文档页数:16,文件大小:69.5KB,团购合买
什么是数据库一致性和事务 Oracle中的事务 事务的属性和隔离级别 事务的处理原则
点击下载完整版文档(PPT)

第19章数据库一致性与事务管理 数据库中的数据是每时每刻都有可能发生变化的。但 是这种变化必须是可以接受的和合理的。即数据必须保持一 致性。事务是保证数据一致性的重要手段。本章将从以下几 个方面讲述数据一致性。 什么是数据库一致性和事务 Oracle中的事务 事务的属性和隔离级别 事务的处理原则 通过本章的学习,读者可以对数据一致性有清晰的认 识,并了解Oracle中的事务处理原则

Oracle Oracle

19.1数据一致性和事务 用户对数据库的操作是复杂多变的。这些复杂的动作 可能是一个逻辑整体,如果处理不当极易造成数据不一致。 同属一个逻辑整体的操作应该作为一个事务进行处理,从而 避免出现数据不一致性

19.1.1 Oracle中的数据一致性 数据库是现实世界的反映。例如,一个存储了多家连锁店 铺库存信息的数据库,如果需要进行货物调配,则需要进行数 据更新。从A店调出的货物送至B店,那么A店对应的库存量应 该进行削减,B店库存进行相应增加。在数据库中的实际操作 应该是两条SQL语句,一条语句减少A店库存,另外一条增加 B店库存。但是,数据库有可能拋出这样那样的异常,例如, 第一条语句执行完毕,突然断电,或者第二条语句由于其他原 因(如表本身的约束)而没有执行成功,就造成了数据不符合 实际情况,即实际库存与数据库记录不符。 类似的场景还有很多,但作为存储基础数据的数据库,必 须避免任何犯错的可能,即必须保持数据一致性

A B A B SQL A B

19.1.2 Oracle中的事务 事务是保证数据一致性的重要手段。试图改变数据库 状态的多个动作应该视作一个密不可分的整体。无论其中经 过了多么复杂的操作,该整体执行之前和执行之后,数据库 均可保证一致性。整个逻辑整体即使一个事务。 事务 操作1 数据保持一致性 操作2 操作3 数据保持一致性

数据保持一致性 数据保持一致性 操作1 操作2 操作3 ... 事务

19.2 Oracle中的事务处理 一个事务的生命周期包括,事务开始、事务执行和事务 结束。在Oracle中,并不会显式声明事务的开始,而是由 Oracle自行处理。事务的结束可以利用commit.或者rollback 命令。本节将从以下角度讲述Oracle中的事务处理。 利用Commit命令结束事务 利用Rollback命令结束事务 事务属性和隔离级别

Oracle Oracle commit rollback Oracle Commit Rollback

19.2.1利用commit命令界定事务 事务的开始无需显式声明,在一个会话中,一次事务的 结束便意味着新事务的开始。事务的结束可以利用commit命 令,如示例19-1所示。 【示例19-1】利用commit命令界定事务。 在表warehouse中存储了仓库及库存信息,如下所示。 SQL>select from warehouse;

commit 19-1 19-1 commit warehouse SQL> select * from warehouse;

19.2.2利用rol1back命令界定事务 rollback命令用于回滚事务内的所有数据修改,并结束 事务。在示例19-1中,无论进行了多少次调仓,使用 rollback命令将忽略所有操作。 【示例19-2】利用rollback命令界定事务。 SQL>update warehouse set stock=stock-100 where warehouse_name='A仓'and goods='衬衫'; 1 row updated SQL>update warehouse set stock=stock+100 where warehouse_.name-B仓'and goods='衬衫';

rollback 19-1 rollback 19-2 rollback SQL> update warehouse set stock=stock-100 where warehouse_name='A ' and goods=' '; 1 row updated SQL> update warehouse set stock=stock+100 where warehouse_name='B ' and goods=' ';

19.2.3 Oracle事务的属性和隔离级别 Oracle中,可以设定事务的属性和隔离级别,以保证 事务运行在某种特定环境。因为数据库状态总是在不断进行 变化的,特定的环境有利于事务在一个稳定的状态下工作。 这些属性和隔离级别包括: read only属性; read write属性; serializable隔离级别; read commited隔离级别。 1.read only.属性 2.read write,属性 3.serializable隔离级别 4.read commited隔离级别

Oracle read only read write serializable read commited 1 read only 2 read write 3 serializable 4 read commited

19.3事务处理原则 事务并非Oracle数据库的专利,而是被广泛应用,并 具有统一的处理原则。事务的处理原则包括以下几点: 原子性(Atomicity): 一致性(Consistency): 隔离性(Isolation): 持久性(Durablity):

Oracle Atomicity Consistency Isolation Durablity

19.3.1事务的原子性一Atomicity 原子性是事务的最基本属性。当事务被提交时,所有数据 修改都将被确认;当事务回滚时,所有数据修改都将被忽略。 不能出现部分提交部分忽略的情形。当然,具体的实现细节均 由数据库实现。对于用户来说,只需使用commit/rollback命 令来提交/回滚事务即可

—— commit /rollback /

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共16页,试读已结束,阅读完整版请下载
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有