【面向对象技术引论】面向对象的数据库系统.pptVIP

【面向对象技术引论】面向对象的数据库系统.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 第五部分 面向对象的数据库系统 参考书: 6. 蔡希尧, 陈平. 面向对象技术. 西安: 西安电子科技大学出版社, 1993年11月(第6章) 2.冯玉林,黄涛,倪彬. 对象技术导论. 北京: 科学出版社, 1998年3月(第五章) 术语:数据库、数据库管理系统、数据库系统 一、 引言 数据库技术的发展 网状 数据库 关系型 数据库 面向对象 的数据库 层次 数据库 从文件系统 发展到数据库 具备了:最小冗余、支持共享、独立于应用、高效的检索与更新操作等特点 基于网状数据模型 基于层次数据模型 基于关系数据模型 基于面向对象数据模型 为什么出现面向对象的数据库(OODB)? 数据库应用范围的扩大,数据类型更为复杂,如: CAD应用——二维、三维图形与图象 多媒体应用——文本、图形、图象、声音、视频 复杂、嵌套的数据,超长、变长文本 等等 面向对象程序设计范型的推动 越来越多的应用系统采用面向对象的程序设计范型 传统的数据库不能有效地支持对象存储 面向对象的数据库系统 必须具备的两项特征 ——蔡希尧 (1)支持核心的面向对象数据模型(对象模型); (2)借助对传统数据库之语义的扩充或修改,使之与核心的面向对象数据模型的语义一致,以支持传统数据库中所有的数据库特征。 面向对象数据库管理系统的两种类型 1、在已有的面向对象编程语言基础上增加数据库功能 主要是增加对象的永久存储与检索、并发控制、等功能和可恢复性、一致性(完整性)、可靠性措施 例如:GenStone、ORION、ObjectStore 2、在关系型数据库中增加对OO范型的支持 主要是将数据模型扩充为对象数据模型,支持类的定义,提供应用接口等 例如:O2、Iris、POSTGRES 前者侧重于语言,带有较多的语言色彩 后者侧重于数据库,较多地体现数据库的特征 二、 对象模型 对象模型 在OODB领域作为“面向对象的数据模型”的简称,有以下特征:(蔡希尧) 对象(包括操作、请求、消息、方法和状态) 联编(绑定)和多态 密封(封装)性 对象标识 类型和类 继承性和代理 值得注意的对象: 联系和属性、字面对象、组合对象/复杂对象、聚集 可扩充性 完整性 对象语言 值得注意的对象 联系(关联)在数据库中的实现 单向实现和双向实现 带有属性和操作的关联 属性的实现 在关系型数据库中,属性都是简单类型的 在OODB中,属性的类型可以是构造类型,可以是类 字面对象 不需要显式生成的数据对象,如数、字符串等 组合对象(复杂对象) 以其它对象作为自己属性的对象 (相当于本课以往讲的整体-部分结构中的整体对象) 聚集(aggregation) 以某种方式(例如集合、包、列表、元组、数组等)组织在一起的一组对象的总称(不同于本课以往讲的聚合) 可扩充性 可扩充的数据库 允许数据库模式进行扩充和修改 对象模型的可扩充性 (1)在系统建立之后允许继续定义新类 在已有类的基础上,通过继承扩充新类 (2)允许对已有的类进行修改 如添加新的操作、属性、约束、操作的实现等 (3)允许已有的对象实例获得新的类型 完整性约束 由用户在对象中定义一些检验数据一致性的规则(约束条件),由系统保证。例如: 只允许向对象施加预先说明过的操作 对操作数和操作结果的类型加以约束 对属性值加以约束 对引用加以约束(例如被引用的对象必须存在) 对象语言(OL) 用于定义和操纵系统中的类和对象 相当于传统数据库中的数据定义语言(DDL)和数据操纵语言(DML) 具有以下能力: 类的定义和操纵 例如类的创建、访问、修改、删除 操作(方法)的定义 操作接口的定义和操作的编程实现 支持封装,允许用不同的编程语言实现操作 对象的操纵 例如对象的创建、访问、修改、删除 计算完全的对象语言 除了提供与数据库有关的功能之外,还能完成所有的常规程序设计。 三、 对象数据管理 对象数据管理(ODM)指面向对象数据库中的数据管理。 相应的系统叫做对象数据管理系统(ODM系统) 。 提供的功能或机制: 永久对象(持久对象) 并发控制 事务 分布处理 变动管理 安全性 可靠性 永久对象:可以超过程序运行的时间而长久存在的对象 暂态对象:生命期不超过程序运行时间的对象 OODB中的对象都是永久对象 但是相关的语言未必把所有的对象都定义为永久对象 编程语言(或数据库语言)表示对象永久性的策略 所有的对象都是永久对象 声明某些类所有的对象实例都是永久对象 声明某些对象实例是永久对象 通过显式的操作将对象永久化 按可达性规则 永久对象 并发控制机制 当多个进程并发地访问数据库中的对象时,需要一种机制保证不发生冲突,这种机制称作并发控制机制。 例如:锁定 事务(transaction) 一个原子的(不可分的)操作集合,以一

文档评论(0)

精品资料 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档