数据库系统原理与应用教程ch04.pptVIP

  • 6
  • 0
  • 约3.01千字
  • 约 22页
  • 2016-01-08 发布于湖北
  • 举报
数据库系统原理与应用教程ch04.ppt

第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)

1亿VIP精品文档

相关文档