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

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

称E和E是一对一的联系,记为1:1。 12

例如,学校实体集与校长实体集间的联系是一对一联系。 , 一对多(1:n)联系

设两个实体集E、E,若E中每一个实体与E中任意个实体(包括零个)相联系,而1212

E中每个实体至多和E中一个实体有联系,则称E和E是一对多的联系,记为1:n。 2112

例如,系实体集与教师实体集、班长与同学之间是一对多联系。 , 多对多(m:n)联系

设两个实体集E、E,若E中每一个实体都和另一个实体集中任意个实体(包括零个)121

有联系,则称E和E是多对多的联系,记为m:n。 12

例如,教师实体集T与课程实体集C间是一对多联系。因为教师实体集T中的某个教师可能讲授一门课程或几门课程,也可能不讲课;因为课程实体集C中的一门课程可能由一个教师或几个教师讲授。再如:学生与课程、供应商与商品等

m:n 都是m:n联系。

1:1联系是1:n联系的特例,而1:n联系又是m:n联系1:n 的特例。它们之间是包含关系。如图2,2所示。 1:1 (2)多元联系

在E,R数据模型中,二元联系这种表示方法还可推广到多元联系,即参与联系的实体个数n?3。例如,三元联系也可区分1:1:1、1:1:p、1:n:p、m:n:p等联系。

(3)自反联系

表示同一个实体集两部分实体之间的联系,是一种特殊的二元联系。这两部分实体之间的联系也可以区分为1:1、1:n和m:n三种。例如,在“人”这个实体集

中存在夫妻之间的1:1联系;教师实体集中为了描述领导与被领导关系,可用1:n联系描述;在课程实体集中存在一门课程与另外一门或几门课程之间的预选课联系。

3)属性

实体或联系所具有的特征称为属性。实体是由特征来表征和区分的,通常一个实体可以由多个属性来描述。例如,学生具有姓名、学号等属性。

, 一个实体可以有若干个属性,但在数据库设计中通常只选择部分数据管理需要的属

性。

, 属性往往是来可再细分的原子属性,如姓名、性别等。

, 属性有型和值的区别。例如,学生实体中的学号、姓名等属性名是属性型,而

“021231142”、“李定”等具体数据称为属性值。

, 每个属性值都有一定的变化范围,通常称属性取值的变化范围为属性值的域。例如,

性别属性域是男、女,年龄属性域是1~200。

, 能唯一标识实体集中某一实体的属性或属性组称为实体集的标识关键字或称关键

字。 2.2.2 E,R图

E,R图是E,R数据模型的图形表示法,是一种直观表示现实世界的有力工具,目前E-R图已用于数据库的概念设计。

3

1)E,R图的表示方法

用矩形框表示实体集,矩形框中是实体集名。 实体集名

用菱形表示联系,菱形框中是联系名。与其相关的实体集之间用无向 边连接,连线边上标明联系类型。 联系

用椭圆表示属性,并用无向边连向与其相关的实体集或联系。 属性 在E,R图,为了突出实体集之间的联系,通常采用略去实体集或联 系的属性的E,R简图来表示。上述提到的几种联系的E,R简图如图2,3、图2,4所示。

校长 系部 教师 1 1 1 m 1 m

人 教师 夫妻 课程 负责 领导 聘任 教学 预选 1 n n 1 n n 学校 教师 学生

图2,3 二元联系E,R简图 图2,4 自反联系E,R简图 2)E,R图的构成规则

(1)画出实体集及它们之间的联系

, 如果实体集A中实体之间有联系A,A,则可根据联系类型的不同,分别用图2,

5的(a)、(b)、(c)表示。 m 1 1 A A-A A A-A A A-A n n 1

(a)A,A联系类型为1:1 (b)A,A联系类型为1:n (c)A,A联系类型为m:n 图2,5 实体集A中实体之间的联系

, 如果实体集A和实体集B之间有联系A,B,则可根据联系类型的不同,分别用图

2,6的(a)、(b)、(c)表示。 A A A 1 1 m

A-B A-B A-B 1 n n B B B

(a)A,B联系类型为1:1 (b)A,B联系类型为1:n (c)A,B联系类型为m:n 图2,6 实体集A和实体集B之间的联系

, 如果三个上实体集之间有联系,则可根据其联系类型画出E,R图。为简单起见,

这里以三个实体集A、B、C及其联系A-B-C为例,根据它们之间联系类型的不同

分别用图2,7的(a)、(b)、(c)表示。 4 A A A A 1 m 1 1

A-B-C A-B-C A-B-C A-B-C 1 1 n p 1 n p p B C B C B B C C

(a)A-B-C联系类型为1:1:1 (b)A-B-C联系类型为1:1:p (c)A-B-C联系类型为1:n:p (d)A-B-C联系类型为m:n:p

图2,7 实体集A、实体集B和实体集C之间的联系 (2)画出实体集及联系的属性

用无向边把属性框连向与其相关的实体集或联系。在E,R图中有些属性连线上加有短垂线,表示该属性是实体标识关键字或标识关键字的一部分。

例如学校和教师实体集间存在聘任联系,联系有“聘任日期”属性,则一个描述学校和教师实体集及其联系的E,R图如图2,8所示。

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