ORACLE8 UML 对象建模设计02.pdf

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

下载 第2章 数据库基础 如果认为对象建模的优势在于编写数据库程序时,不必为关系的设计和规范化而烦恼, 那就大错特错了。设计一个好的关系数据库的原则,以及规范化的合理使用,也都应当应用 到对象关系模型中。 本书的目的不是为了介绍数据库基础知识,本章我们假定读者是数据库的专业人员或已 修过数据库课程,从事过关系数据库的工作,且希望转向面向对象模型。本章将简要回顾关 系和面向对象理论的一些要点。 2.1 关系数据库理论简要回顾 到底什么是关系数据库?简单地在关系数据库产品(例如 O r a c l e )中存放一些表,并不是 已经建立了一个关系数据库。建立一个关系数据库,要求数据库中的表符合基本的关系原理, 并能进行关系操作。2 . 3节“规范化规则”中介绍了这些概念。 为了说明这些原理,本章将给出若干例子,例中存放在展开文件中的数据不符合规范化 规则。我们将解释为什么这些结构是不可取的,并给出等价的关系,以及这些关系是如何改 善设计的。 例1 : 下图2 - 1 E M P表中存放雇员的人事档案数据。 图2-1 EMP关系表 这个结构存在以下问题: ■ 若删除财务部门(F I N )的所有雇员信息,则财务部门现存的全部收据都将被删除。 ■ 如果部门名称由F I N改为F I N A N C E ,则属于财务部门的每一条职员记录都需要修改。 根据关系理论,解决的方法是将信息存放到两个表( D E P T表和E M P表)中,结构如图 2 - 2所示。 注意在此结构中,将部门信息和职员信息分别存放到单独的表中,如果要查找 A l所在的 部门,可以在E M P表中先找到该部门的编号为 1 0,然后到D E P T表中确定编号 1 0对应的部门名 称。 有人认为将信息存放在一个表中的效率更高些,但是这样产生的数据库难以操作,需另 外编写大量复杂的代码,才能克服由单一数据文件所带来的困难。把相关信息存放在多个表 26计计第一部分 基 础 下载 中的问题,正是关系数据库设计要解决的问题。通 常数据库的物理实现是在这些相关联的列(称为外 码)上建立索引,上面的例子中, D e p t N o就是一个 外码,这样做可以大大提高查找所需信息的效率。 例2 : 下图2 - 3 是一张购货单( P U R C H _ O R D E R ) 表。 这样,每一张购货单都将存放在一条记录中, 这种结构存在以下问题: ■ 为计算一张购货单的总金额,需要在两个地 方 将 P R I C E 字 段 乘 上 Q T Y 字 段 的 值 (Q T Y 1 * P R I C E 1 + Q T Y 2 * P R I C E 2 )。 ■ 在购买了第三种货物后如何存放呢?就只好 为增加的货物再建一个表了。 图2-2 DEPT表和E M P表的关系表示 如果使用下图2-4的结构,将解决所有这些问题。 购货单 图2-3 购货单表的结构 图2-4 改进后的购货单表的结构 利用字段P O _ N B R将这两个表关联,就可以使一个购货单号对应任意多个货物记录。 基本术语和概念 在例 1和例2 中,主要讲了表和字段的设计。在关系数据库的设计中,考虑的是逻辑数据 模式,而不是物理数据模式。逻辑数据模式体现的是数据库的设计,而物理数据模式体现的 是设计的实现。逻辑设计和物理设计使用的术语是不同的,这可能会在理解上产生混乱。下 第 2章 数据库基础计计27 下载 面的讨论将使用这些术语,因此,为帮助读者弄清它们的含义,列出如下表格: 逻辑关系 逻辑对象 物理对象 实体

文档评论(0)

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

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

1亿VIP精品文档

相关文档