(ppt)数据库设计开发-0-4.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(ppt)数据库设计开发-0-4

郭文明 2003.06.05 《电信资源管理系统》立项可行性说明 郭文明 2003.06.05 1.4 对象关系数据库 传统关系型仅支持简单数据类型;不支持数组、嵌套和递归的数据结构,给新型数据模型-面向对象的数据模型提供了应用背景。 面向对象的程序设计思想和技术促进了面向对象的数据模型的实现和应用-OODBS(面向对象数据库)。 习惯于‘填表’方式的客户不太愿意接受对象模型,而且面向对象数据库系统与编程语言集成度高,没有统一可行标准; OODBS只占很小的市场分额。 以关系数据库和SQL为基础扩展关系模型-对象关系数据库(ORDBMS)的发展满足了许多应用需求。 1.4 对象关系数据库 ORACLE、DB2 UDB、INFORMIX都推出ORBMS, ANSI/ISO 发布的SQL-99标准是一个对象关系标准。 1.4.1 面向对象数据模型 1.4.1.1对象与标识 1.4.1.2类和类层次 1.4.1.3继承和嵌套 1.4.1.4面向对象数据库 1.4.2 ORACLE对象关系库 1.4.2.1ORACLE中对象类型 1.4.2.2ORACLE中汇集类型 1.4.2.3PL/SQL过程、用户 定义函数和方法 1.4.1 面向对象数据模型 面向对象数据库系统(Object Oriented Database System, OODBS)是数据库技术与面向对象程序设计方法相结合的产物;面向对象程序设计方法的主要活动在建立对象和对象之间的联系;面向对象数据库系统一般依赖于一个面向对象的程序设计语言.一个面向对象数据库系统是一个持久的、可共享的对象库的存储和管理者;而一个对象库是由一个OO模型所定义的对象的集合体。 面向对象数据模型是用面向对象观点来描述现实世界实体的逻辑组织、对象间限制、联系. 1.4.1 面向对象数据模型 面向对象数据模型的主要观点: 对象:对象是基本的数据结构,现实世界的任一实体都被统一模型化为一个对象,每个对象有一个永久标识;对象可以被指定为一个给定类型,还可以定义为其它对象的子类型; 封装:每一个对象是其状态与行为的封装。封装的状态为属性,行为为方法。对象与外部通信一般只能通过显式的消息传递。 继承:子类型继承父类型的所有特性和行为. 1.4.1.1对象与标识 对象是由一组数据结构和在这组数据结构上的操作的程序代码封装起来的基本单位,包括:属性、方法和消息。 面向对象的数据库系统在逻辑上和物理上从面向记录上升为面向对象、面向可具有复杂结构的一个逻辑整体。 面向对象数据库中的每一个对象都有一个唯一的不变的标识(OID)。创建对象时系统就给它赋予一个OID,直到它被删除。 外部与对象的通信只能通过消息,隔离了对象的实现与对象的应用,提高数据独立性。 查询属性值通过调用方法,不象关系系统那样使用SQL,不够方便灵活。 1.4.1.2 类和类层次 相似对象的集合称为类,每个对象称为它所在类的一个实例,一个类中的所有对象共享一个定义,它们的区别仅在与属性的取值不同.类本身也可以看作一个对象(类对象). 面向对象数据模型提供类层次结构,一个面向对象数据库模式可能有多个类层次(超类和子类),在一个类层次中,一个类继承其所有(直接和间接的)超类的全部属性、方法和消息.超类是子类的抽象,子类是超类的特殊化. 1.4.1.2 类和类层次 类层次可以动态扩展,一个新的子类能从一个或多个已有类导出。 面向对象数据库中,类是“型”,对象是某一类的一个“值”.类属性的定义域可以是任何类(基本类或包含属性和方法的一般类)。 面向对象数据库模式是类的集合,类可能有多个类层次。 1.4.1.3 继承和嵌套 子类继承超类的特性,避免许多重复定义.这种继承性有两优点:是建模的有力工具;提供信息重用机制.封装和继承导出多态性. 子类可以定义自己特殊的属性、方法和消息,在定义这些特殊的属性、方法和消息时可能与超类或多个超类之间发生冲突.这种冲突由系统解决,不同系统使用不同的冲突解决方法. 一个对象属性可以是另一个对象称为对象的嵌套.这样一来,不仅类之间具有层次结构,而且某一个类内部也具有嵌套层次结构,形成对象横向和纵向的复杂结构. 1.4.1.4 面向对象数据库 在OODB中,与对象模型密切相关的是面向对象数据库语言。OODB语言主要包括对象定义语言(ODL)和对象操纵语言(OML),对象操纵语言一个重要子集是对象查询语言(OQL)。 OODB语言一般应具备类的定义与操纵、操作/方法的定义、对象的操纵功能。 面向对象数据库语言的研制是OODB系统开发中的重要部分,人们试图扩充面向对象程序设计语言OOPL的查询语言或者扩充SQL的功能,目前还没有像SQL那样的关于面向对象数据库语言的标准

文档评论(0)

jizi6339 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档