2017 第2章 实体联系模型(1)

合集下载

实体联系E-R模型

实体联系E-R模型

2.3码 §2.3码
实体集的码: 实体集的码:
对一个实体集来说,它的侯选码不是唯一 的,也就是说几个不同的属性集都可以做 侯选码的情况是存在的。对customer实体 集来说,假设不同客户的名字是不同的, 那么customer-name属性也是一个侯选码。 不同侯选码的组合是一个超码,但绝对不 是一个新的侯选码。虽然social-security 和customer-name一起能区分customer实体, 但它们的组合并不能称为侯选码。
Studios Producing studio
联系中的属性
联系中也可以包含属性
由联系而产生的属性
salary
Stars
Contracts
Movies
Studios
§2.2映射约束 映射约束
1、映射基数 、 映射基数或基数比例, 映射基数或基数比例,指明实体集中的一 个实 体通过一个联系集能同另一实体集相联系的实 体数目。 体数目。 对于实体集A和B之间的二元联系集 来说, 之间的二元联系集R来说 对于实体集A和B之间的二元联系集R来说,映 射的基数只可能是下列四种情况之一。 射的基数只可能是下列四种情况之一。
payment-number paymentloan-number loanloan loan-payment loanpayment payment-date payment-
amount payment-amount payment-
箭头表示1 箭头表示
家属
从属
员工存在依赖和ຫໍສະໝຸດ 部参与: 存在依赖和全部参与:Studios
一个制片公司与一位特定的影星签约来演一部特定的电影
联系中的角色
实体在联系中的作用 参与联系的实体集互异

实体关系模型(E-R图)

实体关系模型(E-R图)
在设计数据库时,人们往往把E-R图作 为中间步骤,用E-R图准确地反映出信息, 再从E-R图构造出实施数据模型,从而使问 题变得简单,不易犯错。
3
1 E—R模型
1.1 E-R图的组成要素及其画法
1.E-R图要素:实体集、联系、属性、主关键字
2.绘制方法 把相互联系的实体集(方框)通过联系(菱形框)连 接起来,注明联系方式,再把实体集的属性(椭圆框) 连到相应实体集上。
25
3.1 两实体集间联系的转换 1.两实体集间1:n联系 两实体集间1:n联系,可将“一方”实体集 的主关键字纳入“n方”实体集对应的关系中作 为“外关键字”,同时把联系的属性也一并纳 入“n方”对应的关系中。 例如,图3所示的一对多的联系,可转换成 下面的两个关系模式 。
26
2.两实体集间m:n联系 对于两实体集间m:n联系,必须对“联系”
注意:一个系统的总体E—R图不是惟一的,强调不
同的侧面画出的E—R图可能有很大不同。总体E—R
图所表示的实体联系模型,只能说明实体间的联系,
还需要把它转换成数据模型才能被实际的DBMS所接
受。
19
【例7】某学校管理系统中有三个部门:教务处、人事处和 财务处。教务处职能是管理学生选课和教师任课;人事处职 能是管理人员的隶属关系;财务处职能是发放教师的工资。
作者和图书可用以下属性来描述: 作者——编号,姓名,职称 图书——书号,书名,出版日期
另外,在“创作”联系中应能反映出该书的合同时间 和完成时间。请根据描述画出能够反映实体之间的信 息关系的E-R图。
9
10
11
1.3 同一实体集内部不同联系情况的E-R图表示法
【例4】同一实体集内部的一对多联系的绘制方法。 假设在某单位里,职工实体集中的实体可分成两类: 领导者和被领导者。领导者可以领导多个被领导者, 而被领导者只有一个顶头上司,从而实现层层负责制。 而对于一个具体职工而言,他既可能是其他职工的领 导者,又可能被别的职工领导。

实体联系模型

实体联系模型

实体联系模型实体-联系模型基本概念实体:实体是有别于其他对象的⼀个事物,⽐如⼈,教师,学⽣,课程,专业。

实体集:⼀系列实体组成的集合,在数据库中对应的就是⼀个表。

属性:⼀组属性构成⼀个实体,⽐如学⽣可能具有学号,姓名,年龄等属性。

每个实体中的属性都有⼀个值。

所以⼀个数据库中包含若⼲个实体集,每个实体集中有若⼲个实体,每个实体中有⼀些属性。

联系:多个实体之间相互关联,⽐如教师Katz 和学⽣Shankar 可能存在⼀个联系advisor ,表⽰Katz 是Shankar 的⽼师联系集:相同类型联系的集合。

如果E 1,E 2,E 3,...,E n 是实体集,联系集R 是如下集合的⼀个⼦集,n >=2,(e 1,e 2,...,e n )是其中的⼀个联系。

(e 1,e 2,...,e n )|e 1∈E 1,e 2∈E 2,...,e n ∈E n 说⽩了,联系集就是咱们⽤数据库时建的那些⽤来联系两个表的表,⽐如选课表⽤来联系学⽣和课程之间的⼀个关系。

⽽这个联系⽤数学表⽰就是(student _id ,course _id ),所有这些元组就组成了联系集{(student _id ,course _id )|student _id ∈student ,course _id ∈course },也就是选课表。

参与:实体集之间的关联称为参与,⽐如⼀个学⽣Shankar 和⼀门课程Comp. Sci.共同参与到选课这个联系中。

联系实例:两个实体集中的实体参与到⼀个联系中时,就构成了⼀个联系实例,⽐如学⽣Shankar 选了Comp. Sci.课程,那么它们就构成了选课联系中的⼀个联系实例。

⾓⾊:实体在联系中充当的功能。

描述性属性:联系中可以具有⼀些描述性属性,⽐如通过⼀个date 来记录学⽣在何时选了⼀门课。

联系集的度:参与联系集的实体集个数,⼀般情况下联系集的度为2,称为⼆元联系集。

属性简单属性和复合属性之前的属性都是简单属性,就是只有⼀个值的属性,复合属性可以继续划分称更⼩的属性。

第2章 实体联系数据模型

第2章 实体联系数据模型
{(e1,e2,…,en)|e1 ∈ E1,e2 ∈ E2,…,en ∈ En}的 } 一个子集, 一个子集,其中 (e1,e2,…,en)是一个联系 是一个联系
参与:实体型之间的关联称为参与。 角色:实体在联系中的作用。
NanHua University School of Computer Science & Technology 22
2
第2章 实体联系数据模型
2.数据模型含有哪些内容?
数据的静态结构。 数据的动态操作(增删改查询)。 数据的完整性约束。 综合说来,应描述数据、数据之间联系、 数据语义及完整性限制。
NanHua University School of Computer Science & Technology
3
NanHua University School of Computer Science & Technology
21
第2章 实体联系数据模型
联系型( 联系型(Relationship Set) )
同类型的联系的集合。 规范的说,联系型是n(n≥2)个实体型上 的数学关系。如果E1,E2,……,En为n 个实体型,那么联系型R是
提示:用这种方式(约束)来说明现实系统 中的某种规定
NanHua University School of Computer Science & Technology 25
第2章 实体联系数据模型
a1 a2 a3 a4
b1 b2 b3 b4
NanHua University School of Computer Science & Technology
26
第2章 实体联系数据模型

数据库系统概论——实体-联系模型、ER图

数据库系统概论——实体-联系模型、ER图
(4)供应商、项目和零件三者之间具有多对多的联系,此联系 的属性是供应量
画E-R图
例2.学生信息管理系统
❖ 1.找出当前问题/应用涉及到的所有实体型 ❖ 2.分析实体型的属性
▪ 学生: 学号、姓名、性别、系别、出生日期、入学日 期、奖学金
▪ 课程 :课程号、课程名、教师、学分、类别
❖ 3.找出实体型之间的联系 ❖ 4.确定联系的映射基数以及是否具有属性
联系中的一个重要概念——映射基数
❖ 映射基数 ❖ 指明通过一个联系集能同时与另一实体相联系的
实体数目
二、两个实体型之间的联系
用图形来表示两个实体型之间的这三类联系
实体型A
实体型A
实体型A
1
1
m
联系名
联系名
联系名
1 实体型B 1:1联系
n 实体型B 1:n联系
n 实体型B m:n联系
二、两个实体型之间的联系(续)
画E-R图
借书日期
更新日期
图书名称 图书分类号
作者
图书
n
1
借阅
编号 读者
状态 姓名 工作单位
出版社
图书编号
图书价格
还书日期
办证日期 罚金
身份证号
随堂练习
❖ 医院病房计算机管理系统 ❖ 其中,一个科室有多个病房、多个医生,一个病
房只能属于一个科室,一个医生只属于一个科室, 但可负责多个病人的诊治,一个病人的主管医生 只有一个。
❖ 一对一联系
职工
1
n
领导
单个实体型内部 1:n联系
单个实体型内的联系
❖ 多对多联系
实体型1
m
n
联系名
单个实体型内的 m:n联系

第2章 实体-联系数据模型

第2章 实体-联系数据模型

(3)实体型(Entity Type) • 是对现实世界中各种事物的抽象。 • 通常用实体名和属性名来抽象和刻画同 类实体。 • 例如:学生(学号,姓名,性别,年龄) • 一般来说,每个实体型相当于数据库中 的一张数据表结构。
(4)实体集(Entity Set) • 若干同型实体的集合。或者说,凡是有 共性的实体组成的一个集合。 (5)关键字或码(Key) • 能唯一标识实体集中每个实体的属性集 合。
【例2-2】书16页
联系的属性位置约束
• 对于1:1和1:n的联系,数据库设计者可以根 据具体的应用将联系的属性移动到某个实体 集中作为属性。具体做法如下:
如果实体集A和B之间的联系为1:1,则联系的属性 既可以移动到实体集A中,也可以移动到实体集B 中。 如果实体集A和B之间的联系为1:n,则联系的属性 可以移动到与n对应的实体集B中。
如果实体集a中的一个实体可以同实体集b中n个实体n0相联系而实体集b中的一个实体也可以同实体集a中m个实体m0相联系则称a与b具有多对多联系记为m
第2章 实体-联系数据模型
2.1 E-R模型概述 ★ ★ ★ 2.2 基于E-R模型的概念数据库设计★
2.1 E-R模型概述
2.1.1 E-R模型的基本概念 2.1.2 完整性约束 2.1.3 E-R图
本章作业
上机安排
上机地点: 自动化院机房115房间
(6)域(Domain) • 属性的取值范围。 • 例如,性别的域为集合{男,女}。 (7)联系(Relationship) • 现实世界中事物之间或事物内部之间的 关联。
【例2-1】书15页 (1)根据说明,可以定义如下3个实体型: • 系(系号,系名,系主任) • 学生(学号,姓名,性别,出生日期,所在 系,班级) • 课程(课程号,课程名,所在系,学分) (2)存在的联系: • 实体集与实体集之间的联系: • 实体之间的联系:

第2章实体-联系数据模型分析解析

第2章实体-联系数据模型分析解析
抽象 信息世界:概念模型 转换 不依赖于具体 机器和DBMS 依赖于具体 机器和DBMS
DBMS的转换 机器世界
机 器 世 界: 某DBMS支持的数据模型
现实世界 事物及其联系 图 人脑的抽象 信息世界 概念模型 数据模型的两个级别
实施模型
数据库模型通常包含概念模型和实施模型,反映了信息的两重抽象 4
14
二元E/R联系的多样性(2)

一对一联系:如果对于实体集E中的每一个实体,实 体集F中至多有一个实体与之联系,反之亦然,则称 实体集E与实体集F具有一对一联系。
实体集F 实体集E
15
二元E/R联系的多样性(3)

多对多联系:如果对于实体集E中的每一个实体,实 体集F中有n个实体( n≥0 )与之联系,反之,对于实 体集F中的每一个实体,实体集E中也有m个实体 ( m≥0 )与之联系,则称实体集E与实体集F具有多 实体集F 实体集E 对多联系。
数据库实例也包含联系的具体选择。联系n个实体 集E1,E2,…,En的联系R有一个实例,由列表(e1,e2,…,en) 的有限集构成,其中ei是从实体集Ei的当前实例中选 出的。这个列表集叫做R当前实例的联系集。
11
实体-联系模型的基本概念(续)

基本概念
(1)数据库实例:E/R图描述的数据库包含特定的数据称

数据库是某个企业、组织或部门所涉及的数据 的综合,它不仅要反映数据本身的内容,而且 要反映数据之间的联系。

现实世界中的数据要进入到数据库中,需要经 过人们的认识、理解、整理、规范和加工。可 以把这一过程划分成三个主要阶段:

现实世界阶段 信息世界阶段

机器世界阶段
3
三个阶段间的相互关系

实体关系模型

实体关系模型

实体关系模型科技名词定义中文名称:实体关系模型英文名称:entity relationship model定义:该模型直接从现实世界中抽象出实体类型和实体间联系,然后用实体联系图(E-R示数据模型,是描述概念世界,建立概念模型的实用工具。

应用学科:实体关系模型(Entity Relationship Diagram)地理信息系统术语,该模型直接从现实世界中抽象出实体类型和实体间联系,然后用实体联系图(E-R图)表示数据模型,是描述概念世界,建立概念模型的实用工具。

目录什么是E-R图E-R图的基本要素E-R图(Entity Relationship Diagram)即实体联系图,也称实体关系图什么是E-R图E-R图即实体-联系图(Entity Relationship Diagram),是指提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。

E-R方法:是“实体-联系方法”(Entity-Relationship Approach)的简称。

它是描述现实世界概念结构模型的有效方法。

实体联系模型,实体关系模型或实体联系模式图(ERD)是由美籍华裔计算机科学家陈品山(Peter Chen)发明,是概念数据模型的高层描述所使用的数据模型或模式图,它为表述这种实体联系模式图形式的数据模型提供了图形符号。

这种数据模型典型的用在信息系统设计的第一阶段;比如它们在需求分析阶段用来描述信息需求和/或要存储在数据库中的信息的类型。

但是数据建模技术可以用来描述特定论域(就是感兴趣的区域)的任何本体(就是对使用的术语和它们的联系的概述和分类)。

在基于数据库的信息系统设计的情况下,在后面的阶段(通常叫做逻辑设计),概念模型要映射到逻辑模型如关系模型上;它依次要在物理设计期间映射到物理模型上。

注意,有时这两个阶段被一起称为"物理设计"。

E-R模型图E-R图的基本要素通常,使用实体-联系图(entity-relationship diagram)来建立数据模型。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
新实体的属性为参与联系的实体的属性和联系的 属性的并
新实体参与联系
扩展的E-R模型--聚合
存在四个实体集(大学、研究所、公司、科研项目) 和两个联系(合作、承担),其中合作是建立在大学、 研究所和公司之间的联系
具有较强的语义表达能力,简单、清晰、易于用 户理解。
基本E-R模型
实体型:用矩形表示,矩形框内写明实体名。 属性:用椭圆形表示,并用无向边将其与相应的
实体型连接起来。 联系:用菱形表示,菱形框内写明联系名,并用
无向边分别与实体型连接起来,同时在无向边旁 边表上联系的类型(1:1,1:n,m:n)。
m
供应量 n
供应
项目
面积
仓库
m 存放 p
n 零件
职工号 姓名
年龄
1 工作 n 职工
职称
1n 库存量
领导
职工电话号?
编号
预算
零件号 规格 描述
开工日期
名称 单价
基本E-R模型-实例
例2:开发学校信息管理系统。学校中有若干系, 每个系有若干班级和教研室,每个教研室有若干 教师,其中有教授和副教授每人各带若干名研究 生,每个班有若干学生,每个学生选若干课程, 每门课由若干学生选修。
学号
姓名 学生
性别 专业
实体型(Entity type):具有相同属性的实体具有 共同的特征和性质,用实体名及其属性集合来抽 象、刻画同类实体,称为实体型。
E-R模型基本概念
实体集(Entity set):同型实体的集合 联系(Relationship ):现实世界的事物之间是有
联系的,这种联系在信息世界中反映为: ➢实体型(集)之间的联系 ➢实体型(集)内部的联系 两个实体型之间的联系 ➢一对一联系(1:1)例如:部门、经理 ➢一对多联系(1:n)例如:部门、雇员 ➢多对多联系(m:n)例如:学生、课程
学生
m (0,100)
选修
n (3,6)
课程
扩展的E-R模型--参加约束
实体的参与度
➢ 部分参与:min=0,不是实体集中的每个实体都参与联系 ➢ 全参与:min>0,实体集中的每个实体都参与联系
学生 m
选修 n
课程
职工号
电话 姓名
课号
学分
课时
教授 m 讲授 1 课程
扩展的E-R模型--弱实体
属性(Attribute):实体一般具有若干特征,称之为 实体的属性。例如:学生具有学号、姓名等属性
域(Domain):一个属性可能取值的范围称为这个 属性的域。例如:性别的域值只能为“男”或“女”
E-R模型基本概念
候选码:能够唯一标识实体的属性或最小属性组 称为候选码,可能存在多个候选码,设计者必须 指明一个候选码做主码(关键字)。
商店编号 商店名 地址
商店
购物
m
顾客号 姓名 电话
顾客
n
消费金额 日期
基本E-R模型-实例
例4:设计一个图书馆数据库,此数据库对每个借阅者保 存读者记录,包括:读者号、姓名、地址、性别、年龄、 单位。对每本书存有:书号、书名、作者、出版社。对每 本被借出的书存有:书号、读者号、借出日期和应还日期。 每本图书可以具有多种图书类别,每种图书类别可以包含 多本图书。
基本E-R模型-实例
例1:假定开发某工厂物资管理系统,业务调查后 得到如下的问题描述。一个仓库可以存放多种零件, 一种零件可以存放在多个仓库中;一个仓库有多名 职工当保管员,一个职工只能在一个仓库工作,每 个仓库有一名主任。仓库存放由许多供应商为一些 项目提供的多种零件,一个项目可以有多个供应商 提供多种零件,一个供应商可供给多个项目多种零 件,每种零件由不同的供应商提供给多个项目。
借出日期
读者号
姓名 地址
书号
书名
读者
借阅
m
n
图书
m
性别 年龄 单位 应还日期 作者 出版社
隶属
n
图书类别
类别号 类别名
扩展的E-R模型
学号 姓名
学生
住处
教师
如何表示?
本科生
研究生
教授(副)
是否四级
研究方向 培养类型
研究方向 指导人数
软件开发中,实际使用的ER模型有更丰富的语义, 介绍扩展ER的一些内容,扩展ER表示有所不同
➢Covering约束:Covering约束用来指定子类中所 有的实体是否包含超类中的所有实体
扩展的E-R模型--聚合
联系描述的是多个实体集间的关联,只有实体才 能参与联系,不允许联系参与联系,但实际应用 中往往有时需要联系参与联系
把联系看成由参与联系的实体组合而成的新实体, 这种新实体称为参与联系的实体的聚合
➢ 例子:三个实体型之间的联系
m 教师
课程 1
讲授
一对多
n 参考书
n 项目
供应商 m
供应
多对多
p 零件
E-R模型基本概念
单个实体型内的联系
➢ 例如:高数、离散数学是数据结构的先导课,数据结 构是操作系统、数据库原理的先导课。
➢ 又如:职工实体集内的实体有领导和被领导的关系, 经理也是职工,经理要领导多个职工,而一个职工仅 被一个经理领导。
基本E-R模型-实例
供应商号 电话号 仓库号 电话号
姓名
地址 账号 供应商
m
供应量 n
供应
项目
面积
仓库
m 存放 p
n 零件
职工号 姓名
1 工作 n 职工
1n 库存量
领导
年龄 职称
编号
预算
零件号 规格 描述
开工日期
名称 单价
基本E-R模型-实例
供应商号 电话号 仓库号 电话号
姓名
地址 账号 供应商
课程
m
n
先导课
职工
1
n
领导
基本E-R模型
实体-联系模型(简称E-R模型)是由P.P.Chen于 1976年首先提出的。
E-R模型通过E-R图表示实体集及实体集之间的联 系,用于实现数据的第一次抽象,即把现实世界 转换为信息世界。
E-R模型是按用户的观点对数据和信息进行建模, 是用户和数据库设计人员之间进行交流的语言。
1
设有 教研室名
n 教研室
地址
课程号
学时
课程名
课程 n 选修 m
1 属于
n 学生
n 指导 1
工作 1 n
教师
电话号 指导人数 研究方向
成绩
学号 姓名 住处 是否四级 年龄
职工号 姓名 职称
基本E-R模型-实例
例3:假设一个商店有多个顾客购物,一个顾客可以到多 个商店购物,顾客每次去商店购物有一个消费金额和日期 (规定每个顾客在每个商店里最多消费一次)。
基本E-R模型-实例
课程
n 选修 m

1 1

n
班级
1
属于
n
学生
n 指导 1
设有
n
教研室
1
工作
n
教师
每其每个中个系 教 有 学班有研教生若室授选干有和若若副干班学干教课级生授教程和每师教,人每研各门室带课若由干若名干研学究生选生修
基本E-R模型-实例
系名 地址 电话号
班名 人数

1 有
n 班级
基本E-R模型-实例
供应商
m
n
供应
项目
仓库 1 工作 n 职工
m
存放
pn
1n
领导
零件
一仓个库仓存库放有可由多以许名存多放职供多工应种当商零保为件管一,员些一,项种一目零个提件职供可工的只以多能存种在放零一在件个多,仓个一 仓库个库工项作中目;,可每以个有仓多库个有供一应名商主提任供。多种零件,一个供应商可 供给多个项目多种零件,每种零件由不同的供应商提供 给多个项目。
引用率最高的论文之一。 – 根据对1,000个计算机科学领域教授的调查,最初
的ER模型论文被选为计算机科学38篇最具影响力 的论文之一。
E-R模型基本概念
概念模型是现实世界到机器世界的一个中间层次, 概念模型中最常用的是E-R模型,介绍E-R (实体联 系)模型中的主要概念。
实体(Entity):客观存在并可以相互区分的事物叫 实体。(例如:一个个学生、一辆辆轿车)
弱实体
➢ 现实世界有一种特殊的联系,这种联系代表实体间的所 有关系。例如:职工和家属的关系
➢ 弱实体是依赖于其它实体存在而存在的实体
强实体集
弱实体集
扩展的E-R模型--弱实体
弱实体的两个特点
➢特点1:弱实体不能独立存在,它 总是依附于某一所有者实体,即强 实体(owner实体)。
• 强实体集与弱实体集之间必须是一对 多联系,弱实体必须是全部参与
➢ 可以看作是一个概括,即超类是对子类进行概括而得到的 ➢ 概括是自底向上的设计过程,根据实体间共同具有的特 征,将多个实体集综合成一个较高层次的实体集。 ➢ 实体集间存在的共性通过概括来表达。
扩展的E-R模型--类层次
定义在ISA联系上的两种约束关系
➢Overlap约束:Overlap约束用来指定两个子类之 间是否允许包含同一实体
扩展的E-R模型--参加约束
实体的参与度
➢ 实体参与联系的最小和最大次数
➢ 例如:规定每位学生最少选三门课,最 多六门课,则学生在选修联系中的参与 度表示为 (3,6)。
➢ 规定有些课程可以无人选,但任一门课 程最多允许100人选,则课程的参与度 为 (0,100)。
➢ 表示为(min,max),0<=min<=max max>=1
相关文档
最新文档