数据库——ER图

前提

1.概念模型的表示

实体-联系方法,用E-R图来描述现实世界的概念模型,E-R方法也称为E-R模型。

2.信息世界中的基本概念

实体(Entity):客观存在并可相互区别的事物称为实体。

属性(Attribute):实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。例如学生实体可以由学号、姓名、性别、出生年份、系、入学时间等属性组成。(94002268,张山,男,1976,计算机系,1994)这些属性组合起来表征了一个学生。

码(Key):唯一标识实体的属性集称为码。例如学号是学生实体的码。

域(Domain):属性的取值范围称为该属性的域。例如,学号的域为8位整数,姓名的域为字符串集合,年龄的域为小于38的整数,性别的域为(男,女)。

实体型(Entity Type) :具有相同属性的实体必然具有共同的特征和性质。用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。例如,学生(学号,姓名,性别,出生年份,系,入学时间)就是一个实体型。

实体集(Entity Set):同型实体的集合称为实体集。例如,全体学生就是一个实体集。

联系(Relationship) :在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体(型)内部的联系和实体(型)之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系。实体之间的联系通常是指不同实体集之间的联系。

3.两个实体型之间的联系

两个实体型之间的联系可以分为三类:

一对一联系(1 : 1):

如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1 : 1。例如,学校里面,一个班级只有一个正班长,而一个班长只在一个班中任职,则班级与班长之间具有一对一联系。

一对多联系(1 : n):

如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1 : n。例如,一个班级中有若干名学生,而每个学生只在一个班级中学习,则班级与学生之间具有一对多联系。

多对多联系(m : n):

如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体集B具有多对多联系,记为m : n。

ER图表示方法

注:在ER模型中,联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这些属性也要用无向边与其他属性连接起来。

ER图示例

1.一个图书馆借阅管理数据库要求提供下述服务:

(1)可随时查询书库中现有书籍品种、数量与存放位置。所有各类书籍均可由书号惟一标识。

(2)可随时查询书籍借还情况,包括借书人单位、姓名、借书证号、借书日期和还书日期

我们约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有惟一性。

(3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息下相应出版社增购有关书籍。我们约定,一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有惟一性。

根据以上情况和假设,试作如下设计:

(1)构造满足需求的E-R图。

(2)转换为等价的关系模式结构。

解:

(1)

(2)

书籍(书号、品种、数量、存放位置、出版社号

借书人(单位、姓名、借书证号、借书日期、还书日期、书号

出版社(名字、电报编号、电话、邮编、地址、书号

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值