- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章 数据库建模——ODL方法 本章概述 在当前的数据库市场上,虽然传统的关系型数据库依然占主导地位,但是其地位已经产生了动摇。随着计算机硬件、软件和网络技术的发展,人们对数据管理的理解越来越深入。简单的二维表数据模型已经无法表达诸如多媒体数据、超文本数据、多维数据、CAD(Computer Aided Design,计算机辅助设计)数据、地理数据等海量数据的存储和关联。面向对象技术作为新技术,为数据库技术进一步的发展起到了推波助澜的作用。 面向对象数据库的本质就是把客观世界的对象依然看成是一个完整的对象,建立描述该对象的数据和对象之间关联的面向对象模型。 这种面向对象技术克服了关系模型中由于把客观对象肢解成一个个实体而造成的实体之间关系复杂、某些对象无法表示等困难。但是,面向对象数据库技术还不是一个成熟的技术,还处在不断的发展和完善之中。 对象定义语言(Object Definition Language,ODL)是一种基于面向对象技术建立数据库模型的方法。 本章将要全面介绍ODL方法。 本章的学习目标 了解面向对象的基本概念 掌握ODL方法的基本结构 掌握如何使用ODL方法描述客观对象的基本原理 掌握如何使用ODL方法描述子类对象 掌握如何使用ODL方法描述对象的约束 掌握使用ODL方法建立数据库模型的步骤 主要内容 4.1 面向对象的基本概念 4.2 ODL的基本结构 4.3 子类和约束 4.4 本章小结 4.1 面向对象的基本概念 面向对象模型(object-oriented model)是面向对象概念在数据库中的应用。面向对象概念是从程序设计中产生的,后来引入到了数据库设计中。前面学习的ER图和IDEF1x图都是基于关系模型的方法。虽然使用这些方法可以方便地描述客观对象的数据和关系,但是这种描述方式存在着一些缺点,这些缺点包括: 基于关系模型的图形和方法只具有简单的数据类型,无法描述客观对象复杂的特性。 为了避免数据冗余,在ER图或IDEF1x图中,需要把一个完整的对象分散到若干个实体中去描述。如果需要得到某个对象的完整信息,则需要在多个实体中去查找。 有些具有复杂关系的对象,无法转变成二维表格关系,因此不能使用ER图或IDEF1x方法表现出来。 面向对象基本概念 对象 状态、行为和消息 类 封装性 继承性 对象标识 类型系统 4.2 ODL的基本结构 ODL概念 ODL接口说明 ODL中的属性 ODL中的联系 反向联系的概念 联系的多重性 ODL中的类型 ODL中的方法署名的说明 ODL概念 ODL是对象数据库管理协会(Object Database Management Group,ODMG)在从事对面向对象程序设计语言C++和Smalltalk的持久化扩展进行标准化研究时的产物。 ODL是使用面向对象的概念说明数据库结构的标准语言,它是接口定义语言(Interface Definition Language,IDL)的扩展,又是标准的公用对象请求代理程序架构(Common Object Request Broker Architecture,CORBA)的一个组件。 ODL的主要作用是进行面向对象数据库的设计,进而将其直接转换成面向对象数据库管理系统(Object Oriented DataBase Management System,OODBMS)的说明。 ODL接口说明 前面我们已经讨论了面向对象的基本概念,知道类是具有相似特性的对象集合。 使用ODL建立数据库模型的过程,就是描述类的过程,即描述对象的特性的过程。在使用ODL方法定义类时,需要描述的特性包括属性、联系和方法。 ODL中的属性 ODL中的联系 属性只是表示了对象的一部分信息,对象中的有些信息无法使用属性来表示,这些信息是对象与同类对象或不同类其他对象之间的关联信息。在ODL中,使用联系特性表示这些关联信息。 反向联系的概念 联系的多重性 反向联系所具有的多种表现形式称为联系的多重性。 不论是把一个给定的对象和唯一的相关对象相关联,还是把一个对象和多个其他对象相关联,这些都是联系的一种表现形式。 在ODL定义中,可以通过在联系中使用或不使用聚集运算符(例如Set),定义联系形式。 在反向联系中,有四种可能的联系形式如下所示: 一对多联系形式 多对一联系形式 一对一联系形式 多对多联系形式 ODL中的类型 在ODL方法中,为数据库模型设计人员提供了一个类型系统,该类型系统与传统的编程语言例如C中的类型系统非常相似。类型系统是由单独定义的基本类型和利用基本类型与某些递归规则构成的复杂类型组成的。在ODL语言中,基本类型包括原子类型和接口类型。 原子类型是一种不可再分割的基本类型,包括整数型、浮
文档评论(0)