建立数据模型讲解

上传人:最**** 文档编号:117931771 上传时间:2019-12-11 格式:PPT 页数:78 大小:535.50KB
返回 下载 相关 举报
建立数据模型讲解_第1页
第1页 / 共78页
建立数据模型讲解_第2页
第2页 / 共78页
建立数据模型讲解_第3页
第3页 / 共78页
建立数据模型讲解_第4页
第4页 / 共78页
建立数据模型讲解_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《建立数据模型讲解》由会员分享,可在线阅读,更多相关《建立数据模型讲解(78页珍藏版)》请在金锄头文库上搜索。

1、第5章 建立数据模型 第5章 建立数据模型 5.1 建立实体联系模型 5.2 ER模型的设计方法 5.3 ER模型向关系模型的转化 5.4 历史上有影响的数据模型 5.5 数据模型与数据库系统的发展 第5章 建立数据模型 5.1 建立实体联系模型 数据模型是数据库系统的核心和基础。 但现实世 界总是先抽象成信息世界,然后才能转化为数据世界。 信息世界是对现实世界的抽象。 因此,信息世界不可能 等价于现实世界。 但是,信息世界必须: (1) 真实。 忽略的是非本质内容,与研究无关的内容 ; 抽象的是本质内容,确实存在的内容。 第5章 建立数据模型 (2) 完整、 精确。 信息世界应有丰富的语义表

2、 达能力,能模拟现实世界的各种情况。 (3) 易于理解,易于修改,特别是易于用户理解。 (4) 易于向DBMS所支持的数据模型转换。 现实 世界抽象成信息世界的目的,是为了实现信息的计算 机处理。 第5章 建立数据模型 信息世界中的数据模型又称为概念模型。 作为从 现实世界到其他数据模型转换的中间模型,概念模型不 考虑数据的操作,而只是用比较有效、 自然的方式描述 现实世界的数据及其联系。 在设计概念模型时,最著名 、 最实用的是P.P.S.Chen于1976年提出的“实体联系 模型”(EntityRelationship Approach,简称ER模型) 。 第5章 建立数据模型 5.1.1

3、 实体联系模型的基本构成 实体联系(ER)数据模型所采用的三个主要概 念是: 实体集、 联系集和属性。 实体集是具有相同类 型及相同性质(属性)的实体集合。 联系集是指同类 联系的集合。 在ER模型中,用矩形框表示实体集,矩 形框中写上实体名,用椭圆表示属性,椭圆中标上属性名, 实体的主码用下划线表示。 例如实体集职工可用ER 模型表示,如图 5 1 所示。 第5章 建立数据模型 图 5 1 职工的ER模型表示 第5章 建立数据模型 实体集之间的联系集用菱形表示,并用无向边与相 关实体集连接,菱形中写上联系名,无向边上写上联系集 的类型。 部门和职工间的联系可用图5 2所示的 ER模型表示。

4、图 5 2 部门和职工的一对多联系 第5章 建立数据模型 在图 5 2(a)中,无向边上的1和n表示了部门和 职工的联系是一对多联系(或者说职工与部门之间是 多对一联系),即表达了一位职工只能在一个部门中工 作,而一个部门中可有位职工这一语义(注: 有些文献 中使用带箭头的有向边表示联系集的类型)。 实体集间除了一对多(多对一)联系以外,还有一 对一、 多对多联系。 第5章 建立数据模型 企业中除了职工、 部门实体集以外,还有工资、 项 目等实体集,通过分析可知,企业中每一个职工有一份工 资单,而每一份工资单也只属于一个职工,所以职工和工 资实体集之间的关系为一对一关系,简记为11。 另外,

5、一个职工可参加多个项目,一个项目也由多个职工来参 加,所以职工和项目实体集之间的联系是多对多的,简记 为: mn。 它们的ER模型表示分别如图 5 3、 图 5 4所示。 第5章 建立数据模型 图 5 3 职工和工资的一对一联系 第5章 建立数据模型 图 5 4 职工和项目的多对多联系 第5章 建立数据模型 5.1.2 多元联系 在ER模型中,可以表示两个以上实体集之间的联 系,称为多元联系。 如图 5 5 中的联系签约就是一个三元联系。 图 5 5 包含了如下的语义: 对于特定的影星和 电影来说,该影星为演该电影只能和一个制片公司签约 ; 但一个制片公司可以为一部电影和几个影星签约,一 个影

6、星可以和一个制片公司签约主演多部电影。 第5章 建立数据模型 图 5 5 演员、 电影和制片公司之间的三元联系 第5章 建立数据模型 一个多元联系集总可以用多个不同的二元联系集 来替代。 考虑一个抽象的三元联系集R,它联系了实体 集A、 B、 C。 可引进一实体集E替代联系R,然后,为实 体集E和A、 B、 C建立三个新的二元联系集,分别命名 为RA、 RB、 RC。 可以将这一过程直接推广到n元联 系集的情况。 所以,理论上可以限制ER模型中只包 含二元联系集。 然而,在大部分情况下,使用多元联系集 比二元联系集更方便。 第5章 建立数据模型 因为: (1) 多元联系集可以清晰地表示出几个实

7、体集参与 到一个联系集的情况,而转换为多个二元联系后,难以体 现这种参与性。 (2) 对于为替代多元联系集而引进的实体集,有时不 得不为其创建一个标识码。 因为每个实体必须可以相 互区分。 创建的标识码和新建的多个二元联系一样,增 加了设计的复杂度和对存储空间的需求。 第5章 建立数据模型 5.1.3 联系的属性 联系也可以具有单独的属性。 如在图 5 5 中,如 果希望建立某演员和制片公司为一部电影签约的有关 酬金,此时,不能把酬金作为演员的属性,因为一个演员可 能签约了多部电影,得到了不同的酬金; 也不能把酬金 作为制片公司的属性,因为制片公司可能对不同影星支 付了不同的酬金; 酬金也不能

8、作为电影的属性,因为一 部电影中不同的影星可能得到不同的酬金。 所以应该 把酬金作为联系的属性,如图 5 6 所示。 第5章 建立数据模型 图 5 6 联系可具有属性 第5章 建立数据模型 5.1.4 自身联系 在一个联系中,一个实体集可以出现两次或多次,扮 演多个不同角色,此种情况称为实体集的自身联系。 一 个实体集在联系中出现多少次我们就从联系到这个实 体集画多少条线,到实体集的每条线代表该实体集所扮 演的不同角色。 图 5 7 是一个自身联系的例子。 第5章 建立数据模型 图 5 7 一个自身联系的例子 第5章 建立数据模型 图中给出了实体集职工的一个自身联系“领导”,同 一部门中,职工

9、与职工之间可有领导和被领导的关系,其 中一位是另一位的领导。 图中的联系集是1n,说明了 一位职工(领导)可领导其他多名职工,而一位职工只 被另一位职工(领导)领导。 第5章 建立数据模型 5.1.5 子类和is a层次联系 在信息世界中,常常需要描述这样的实体集A,A属 于另一实体集B。 A中的实体都有特殊的属性需要描述 ,并且这些特殊属性对B中其他的实体无意义。 在ER 模型中,称A是B的子类,或B是A的父类。 两类实体之间 存在一种层次联系Is a(属于)。 图 5 8(a) 是它们的ER模型的表示方法。 第5章 建立数据模型 如果A和B存在Is a联系,则A中的每个实体a只和B 中的一

10、个实体b相联系,而B中的每一个实体最多和A中 的一个实体相联系。 从这个意义上说,A和B存在一对 一的联系。 但事实上,a和b是同一事物。 A可以继承B 中的所有属性,又可以有自己特殊的属性说明。 用来区 分A的主码也就是B的主码。 例如,企业中的职工实体集和经理实体集,存在着 Is-a联系,即经理是(is a)职工。 经理可以继承职工的 所有属性,但又有“任职时间”这一其他职工没有的属性 。 其ER模型如图 5 8(b)所示。 第5章 建立数据模型 图 5 8 具有Is-a联系的ER模型 第5章 建立数据模型 5.2 ER模型的设计方法 在设计ER模型时,首先必须根据需求分析,确认实 体集、

11、 联系集和属性。 一个企业(单位)有许多部门, 就会有各种业务应用的要求,需求说明来自对它们的调 查和分析。 有关需求分析的方法将在第 7 章中介绍,这 里只介绍ER模型的设计方法。 在介绍设计ER模型的方法之前,首先强调三条设 计原则: 第5章 建立数据模型 (1) 相对原则: 关系、 实体、 属性、 联系等,是对 同一对象抽象过程的不同解释和理解。 即建模过程实 际上是一个对对象的抽象过程,不同的人或同一人在不 同的情况下,抽象的结果可能不同。 (2) 一致原则: 同一对象在不同的业务系统中的抽 象结果要求保持一致。 业务系统是指建立系统的各子 系统。 (3) 简单原则: 为简化ER模型,

12、现实世界的事物 能作为属性对待的,尽量归为属性处理。 第5章 建立数据模型 属性和实体间并无一定的界限。 如果一个事物满 足以下两个条件之一的,一般可作为属性对待: (1) 属性不再具有需要描述的性质。 属性在含义上 是不可分的数据项。 (2) 属性不能再与其他实体集具有联系,即ER模 型指定联系只能是实体集间的联系。 例如,职工是一个 实体集,可以有职工号、 姓名、 性别等属性,工资如果 没有需要进一步描述的特性,可以作为职工的一个属性 。 但如果涉及到工资的详细情况,如: 基本工资、 各 种补贴、 各种扣除时,它就成为一个实体集,如图 5 9 所示。 第5章 建立数据模型 图 5 9 工资

13、由属性变为实体集 第5章 建立数据模型 再如,仓库和货物的关系。 如果一种货物只存放在 一个仓库中,那么仓库可作为货物的属性加以说明。 但 如果仓库与职工发生联系(每个仓库有若干个保管员 ),那么仓库就应该作为一个实体集加以说明,如图 5 10 所示。 设计一个较大型的企业或单位的ER模型,一般按 照先局部,后整体,最后优化的方法进行。 下面以企业职 工管理系统为例,说明ER模型的一般设计过程。 第5章 建立数据模型 图 5 10 仓库由属性变为实体集 第5章 建立数据模型 例 5.1 企业职工管理中,需要涉及的功能有: 人事处对职工的档案和部门进行管理,包 括职工基本情况,部门的基本情况以及

14、各种职称、 职务的管理; 财务处管理职工的工资情况; 科研处管理项目、 职工参加项目的情况。 第5章 建立数据模型 1. 确定局部应用范围,设计局部ER模型 局部ER模型的设计步骤如图 5 11 所示。 1) 确定局部应用范围 本例中初步决定按部门划分不同的应用范围,即分 为三个子模块: 人事管理、 工资管理和项目管理。 下 面以人事管理为例,说明设计局部ER模型的一般过程 。 2) 确认实体集 在人事管理中,需要对职工、 部门、 职称职务进行 管理,所以实体集有: 职工、 部门、 职称职务。 第5章 建立数据模型 图 5 11 局部ER模型的设计步骤 第5章 建立数据模型 3) 确认实体集间的联系集 需要判断所有二二实体集之间是否存在联系。 职工与部门: n1; 职工与职称职务: mn,因为多个职工可有同一种 职称或职务,而一个职工既可有职称又可有职务。 如某 职工具有高级职称(高工),同时又是处级干部。部门 与职称职务之间没有联系。 4) 确认实体集的属性 职工: 职工号,姓名,性别,年龄。 部门: 部门号,名称,电话。 职称职务: 代号,名称

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号