第2章 数据库系统的数据模型

发布时间 : 星期四 文章第2章 数据库系统的数据模型更新完毕开始阅读

地址 学校名称 学校代码 学校

聘任日期 聘任 教师

职称 性别 教师姓名 教师代码 图2,8 学校和教师实体集的E,R图 2.2.3 扩充E,R数据模型

上述以实体、联系和属性三个抽象概念为基础的E,R数据模型是基本E,R数据模型,为了适应新的应用不断提出新需求和表达更丰富的语义,在基本E,R数据模型基础上发展成扩充的E,R数据模型(EER数据模型)。EER数据模型引入了下列抽象概念。 职工 1)依赖联系和弱实体集 1 在现实世界中,某些实体集间还存在一种特殊的联系――依赖联系。例如,在

成员 人事管理数据库中存放的职工实体集及其家庭成员实体集,前者以后者的存在为前提,家庭成员实体集依赖于职工实体集。这种依赖另一个实体集的存在而存在的实n 体集称为弱实体集,它们与其他实体集间的联系称为依赖联系,如右图所示。 家庭情况 2)子类和超类

在EER数据模型中,为了简化联系的描述,引入了子类这一抽象概念。有时,为了进一步描述一个实体集中某些实体的不同特征,从该实体集中取出一部分实体构成一个(或多个)新的实体集,称这个新实体集是原实体集的子类,而原实体集是新实体集的超类。

5

例如,一个系部的职工实体集,为区分他们不同的工作特点,可分为教师、教辅人员及管理人员三个子类实体集。这三个子类都继承了其超类职工实体集中的姓

名、性别、年龄等所有共同属性,也可增加各自特殊的属性和联系等。其EER数据模型实例如图2,10所示。

年龄 性别 职工代码 职工姓名 职工

管理人员 教辅人员 教师 行政级别 学校团体 图2,10 带有子类的实体集 3)聚集

在基本E,R数据模型中,只有实体集参与联系,不允许联系本身参与联系,在某种程度上限制了对现实世界更自然的描述。在EER数据模型中,将联系视为参与联系的实体集组合而成新实体集,其属性为参与联系的实体的属性和联系的属性的并。这种新实体集称为聚集。这样联系也能以聚集的形式参与联系,图2,11是应用聚集的例子。

教师代码 姓名 单位编码 系名 聚 教师 集 系部 聘任日期 聘任 合同号 承担 科研项目

图2,11 应用聚集的EER图 4)范畴

在描述现实世界时,有时要用到不同类型的实体组成的实体集,然而这在基本E,R数据模型中实体集的概念所不允许的,因此引入了范畴这一抽象概念。设E、E、?E是n12n个不同类型的实体集,则范畴T可定义为:

T,E:E:?:E12n

E、E、?E称为T的超实体集。例如,“银行账户”这个实体集的成员可能是单位,12n

也可能是个人,这种由不同类型实体组成的实体集称为范畴。图2-12是个应用范畴的例子。

6

身份证号 地址 姓名 单位名 法人代表 地点 个人 单位 ? ψ 账户 m 账号 开户 n 银行

图2-12 应用范畴的EER图

图中圆圈中的?表示“并”操作,表示范畴是超实体集(如单位实体集、个人实体集)并的子集。范畴也继承了其超实体集的属性,但与子类有区别,子类是继承所有超实体集的属性,而范畴的继承是有选择性。带有ψ符号的线段表示“特殊化”,如果账户是单位,则范畴――“账户”继承单位实体集的属性;如果账户是个人,则范畴――“账户”继承个人实体集的属性。

2.3 层次数据模型

在现实世界中,有很多事物是按层次组织起来的。例如,一个学校有若干系,一个系有若干班,一个班有若干学生。其他如单位组织机构、图书的编码等都是层次型的。

2.3.1 基本概念和结构

层次模型是按照层次结构的形式组织数据库数据的数据模型,即用树型结构表示实体集与实体集之间的联系。其中用结点表示实体集,结点之间联系的基本方式是1:n。层次模型是数据库中使用得较早的一种数据模型,例如,IMS系统就是IBM公司推出的最有影响的一种典型的层次模型数据库管理系统,也是一个曾经被广泛使用的数据库系统。下面介绍一下层次数据模型的基本概念和结构。

1)记录和字段

记录是用来描述某个事物或事物间关系的命名的数据单位,也是存储的数据单位。它包含若干字段。每个字段也是命名的,字段只能是简单的数据类型,例如整数、实数、字符串等。图2-1是一个名为系的记录。其中有四个字段:系名、系号、系主任名、地点(都是字符串),这是记录的型的定义,即记录的数据模式。图2-2是其一个实例。

系 计算机系 9 李远 科技大楼 系名 系号 系主任名 地点 图2-1 记录的型 图2-2 记录的一个实例 7

2)双亲子女关系(Parent-Child relationship,简称PCR)

这是层次数据模型中最基本的数据关系。它代表了两个记录型之间一对多关系(1:n)。例如,一个系有多个班,就构成了如图2-3所示的双亲子女关系(即PCR型),在“1”方的记录型称为双亲记录,在“n”方的记录型称为子女记录。图2-4是其一个实例。

计算机系 系 1 n

计科0201班 计科0202班 计教0201班 班

联系合同范文客服:xxxxx#qq.com(#替换为@)