数据库原理 第六章 E-R模型的设计方法
第六章 数据库设计和E-R模型
返回
Copyright by ECNU CS DBLAB All rights reserved. 3
第六章 数据库设计和 数据库设计和E-R模型 模型
数据库系统概念
6.2为一个大学的注册办公室维护关于以下实体的数据 为一个大学的注册办公室维护关于以下实体的数据 课程,包括编号,名称,学分,课程提纲和选修条件; (a)课程,包括编号,名称,学分,课程提纲和选修条件; 课程提供,包括课程编号, 学期,节数,教师, (b)课程提供,包括课程编号,年,学期,节数,教师,时 间和教室; 间和教室; 学生,包括学号,姓名和计划( (c)学生,包括学号,姓名和计划(p r o g r a m ); 教师,包括标识号,姓名,系和职称.此外, (d)教师,包括标识号,姓名,系和职称.此外,学生课程 的登记和学生所选的每门课的成绩评定都要适当地建模. 的登记和学生所选的每门课的成绩评定都要适当地建模.
数据库系统概念
6.3考虑一个用于记录学生各种选课考试成绩的数据库. 考虑一个用于记录学生各种选课考试成绩的数据库. 考虑一个用于记录学生各种选课考试成绩的数据库 构造一个将考试建模成实体的E a. 构造一个将考试建模成实体的E - R 图,为以上的数据库 设计一个三元联系. 设计一个三元联系. 构造一个只用二元联系来连接students courseb. 构造一个只用二元联系来连接students 和course-offerin 的可选E gs 的可选E - R 图.要求在特定学生和课程对之间只有一个 联系,而且可以表示出学生在不同选修的课程的成绩. 联系,而且可以表示出学生在不同选修的课程的成绩.
实体关系模型(E-R图)
3
1 E—R模型
1.1 E-R图的组成要素及其画法
1.E-R图要素:实体集、联系、属性、主关键字
2.绘制方法 把相互联系的实体集(方框)通过联系(菱形框)连 接起来,注明联系方式,再把实体集的属性(椭圆框) 连到相应实体集上。
出版社和图书的属性分别如下: 出版社——社号,地点,电话 图书——书号,书名,价格
另外,在出版联系中要反映出出版图书的数量。请根 据描述画出能够反映实体集之间的信息关系的E-R图。
7
8
【例3】两个实体集之间的多对多的联系的绘制方法。 假设在某图书管理系统中,一名作者可以创作多本书, 一本书也可以由多名作者共同创作。图书和作者之间 是多对多的联系。
20
财务处涉及到的实体集及实体集之间的联系如下: 教师:教师号,姓名,身份证号,性别,职称,
出生日期,电话号码,备注,照片 工资:属性有基本工资、加班工资、扣税、工
资编号 教师和工资的联系是:一个教师只能领一份工
资,一份工资只能由一个教师领,领工资时应注明是 某月工资。
请根据要求设计出该学校管理系统的全局E-R图。
1
实体关系模型(E-R模型)
1 E—R模型 2 E—R图的设计方法 3 E—R模型到关系模型的转换
2
1 E—R模型
E-R模型是由P.P.Chen于1976提出的, 现已广泛应用于数据库设计中,该模型通过 E-R图表示实体集及实体集之间的联系,用 于实现数据的第一次抽象,即把现实世界转 换为信息世界。
另外,辅导员和班级之间是一个管理联系,这种 管理用一个属性任职时间来描述,请根据描述画出能 够反映实体集之间的信息关系的E-R图。
数据库原理ER图设计
五、 GROUP BY子句
一、 选择表中的若干列
• 查询指定列
[例1] 查询全体学生的学号与姓名。
SELECT Sno,Sname FROM Student;
[例2] 查询全体学生的姓名、学号、所在系。
SELECT Sname,Sno,Sdept FROM Student;
2. 查询全部列
• 选出所有属性列:
输出结果:
NAME BIRTH BIRTHDAY DEPARTMENT ------- ---------------- ------------- ------------------
李勇 刘晨 王敏 张立
Year of Birth: Year of Birth: Year of Birth: Year of Birth:
确定范围 确定集合 字符匹配 空 值
多重条件(逻辑运算) AND,OR,NOT
(1) 比较大小
[例7] 查询计算机科学系全体学生的名单。 SELECT Sname FROM Student WHERE Sdept=„CS‟; [例8] 查询所有年龄在20岁以下的学生姓名及其年龄。 SELECT Sname,Sage FROM Student WHERE Sage < 20; [例9] 查询考试成绩有不及格的学生的学号。 SELECT DISTINCT Sno FROM SC WHERE Grade<60;
• [NOT] BETWEEN … AND …
多重条件查询(续)
[例23] 查询计算机系年龄在20岁以下的学生姓名。
SELECT Sname FROM Student WHERE Sdept= 'CS' AND Sage<20;
工程类数据库原理ER模型设计方法
定义:实体-关系模型是一种 用于描述现实世界中事物及 其之间关系的模型
步骤:确定实体、定义属性、 建立关系
ER模 型 的 基 本 元 素
实体:表示客 观存在的事物 或对象,具有 明确定义的属
性和关系
属性:描述实 体的特征或参 数,与实体一
一对应
关系:表示不 同实体之间的 联系,如一对 一、一对多或
数据模型的三要素:实体、关系和属性,是构建工程类数据库的基石。
模型设计方法:包括概念设计、逻辑设计和物理设计三个阶段,每个阶段都有相应的设计工具 和技术。
模型评价与优化:根据实际需求和性能要求,对数据模型进行评价和优化,以提高数据库的性 能和效率。
ER模 型 概 述
组成:实体、属性、关系ቤተ መጻሕፍቲ ባይዱ
作用:帮助理解和分析系统 需求,为数据库设计提供指
添加项标题
保持模型的一致性:在ER模型中,实体、关系和属性的定义应 该保持一致,避免出现矛盾或不一致的情况。
添加项标题
最小化冗余:为了减少数据冗余和提高数据完整性,ER模型应 该尽量减少重复的信息,确保信息的一致性和准确性。
添加项标题
易于理解:ER模型应该易于理解和使用,方便用户和开发人员 进行数据库设计和开发。
概念定义:ER模型是实体-关系模型,网状模型是网络模型的一种。 数据结构:ER模型采用三元组表示实体间的关系,网状模型则使用链接来表示关系。 扩展性:ER模型易于扩展,可以方便地添加属性和关系,网状模型扩展较复杂。 规范化:ER模型支持规范化设计,可以有效减少数据冗余,网状模型规范化程度较低。
ER模 型 与 层 次 模 型 的 比 较
建立关系:根据工程项目的实际情况,确定实体之间的关系,如设备与 材料之间的关系。
e-r图设计数据库
e-r图设计数据库E-R图也即实体-联系图(Entity Relationship Diagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。
构成E-R图的基本要素是实体型、属性和联系,其表示方法为:·实体型(Entity):用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。
如果是弱实体的话,在矩形外面再套实线矩形。
·属性(Attribute):用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。
如果是多值属性的话,再椭圆形外面再套实线椭圆。
如果是派生属性则用虚线椭圆表示。
·联系(Relationship):用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n或m : n)。
比如老师给学生授课存在授课关系,学生选课存在选课关系。
如果是弱实体的联系则在菱形外面再套菱形。
两个不同实体间的1:n关系上图中表示的是一辆汽车与零件之间的1:n关系,一辆汽车由许多个零件构成。
“汽车”这个实体具有型号、单价和牌号等属性,“零件”这个实体具有名称、单价和厂家等属性,“数量”是它们之间的关系“组成”的一个属性。
当然E-R图还可以表示1:1关系,例如夫妻关系以及姓名与学号间的关系等。
E-R图还可以表示m:n关系,例如教材中中讲的“学生”与“课程”之间通过“学习”联系,一个学生要学习多门课程,反之同一门课程有很多学生在学习。
在E-R图中,有时为了使其简洁明了,图中可以略去各属性,着重表示实体间的联系情况,而属性可以单独以表格形式单独列出。
4.E-R图的设计E-R图的设计虽然没有一个绝对固定的方法,但一般来说应遵循以下两条基本原则:(1)首先要针对每一个用户做出该用户信息的局部E-R图,确定该用户视图的实体、属性和联系。
[注意]在设计E-R图时,能作为属性的就不要作为实体,这样有利于E-R图的简化。
(数据库原理)第6章E-R模型设计方法
数据库原理与应用教程
6.1 E-R模型的基本元素
1.实体 实体(Entity)是指客观存在并且可以相互区别的
事物,它可以是具体的人、事、物,也可以是抽象 的概念或联系。。 由于具有相同属性的实体拥有一些共同特征和性质, 我们使用实体名及其属性名集合来抽象和刻画同类 实体,称之为实体型。 例如,学生(学号,姓名,出生日期,性别,系 别)、商品(商品号,商品名,产地,价格)都是 一个实体型。
数据库原理与应用教程
6.2.1属性类别分类
3.导出属性
导出属性是指可由其它相互依赖的属性推导而
来的属性。
学生
例如:学生的年龄可由其出生日期推导出来;
学生的平均成绩可由其所有课程的成绩总和除
以门学数号 推导姓出名 来。出生日期
年龄
性别
系别
在E-R模型中,我们用虚线的椭圆表示导出属性。
数据库原理与应用教程
色都是基本属性
数据库原理与应用教程
6.2.1属性类别分类
2.复合属性 复合属性是指可以再进行分解的属性,即属性可以
嵌套。 例如,外国人的名字由名、中间名和姓构成,如果
用户需要分别访问它们,那么把名字属性作为复合 属性。 如果不需要单独访问它们,就可以把它们综合起来 作为基本属性。出生日期也可作为复合属性,由年、 月和日构成。
数据库原理与应用教程
பைடு நூலகம்
6.1 E-R模型的基本元素
同一类型的实体构成的集合称为实体集。例 如:全体职工就是一个实体集。
我们一般将实体、实体型和实体集概念统称 为实体。在E-R模型中提到的实体通常是指
实体集。
数据库原理与应用教程
〉数据库原理及应用教程简答题等答案第六章设计题和简答题答案
第六章三、设计题1.一个图书管理系统中有如下信息。
图书:书号、书名、数量、位置借书人:借书证号、姓名、单位出版社:出版社名、邮编、地址、电话、E-mail其中约定:任何人可以借多种书,任何一种书可以被多个人借,借书和还书时,要登记相应的借书日期和还书日期;一个出版社可以出版多种书籍,同一本书仅为一个出版社所出版,出版社名具有唯一性。
根据以上情况,完成如下设计。
(1)设计该系统的E-R图。
(2)将E-R图转换为关系模式。
(3)指出转换后的每个关系模式的主码。
关系模式及主码图书(书号,书名,数量,位置,出版社名)借书人(借书证号,姓名,单位)出版社(出版社名,邮编,地址,电话,E-mail)2.图6-26(a)、(b)和(c)给出某企业管理系统三个不同的局部E-R图,将其合成一个全局E-R图,并设置各个实体以及联系的属性(允许增加必要的属性,也可将实体的属性改为联系的属性)。
(a ) (b ) (c ) 图6-26 局部E-R 图各实体的属性如下。
部门:部门号、部门名、电话、地址职员:职员号、职员名、职务、年龄、性别设备:设备号、名称、规格、价格零件:零件号、名称、规格、价格3.经过需求分析可知,某医院病房计算机管理系统中需要管理以下信息。
科室:科室名、科室地址、科室电话、医生姓名病房:病房号、床位号、所属科室医生:工作证号、姓名、性别、出生日期、联系电话、职称、所属科室名病人:病历号、姓名、性别、出生日期、诊断记录、主管医生、病房号其中,一个科室有多个病房、多名医生,一个病房只属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。
根据以上需求分析的情况,完成以下有关的设计。
(1)画出该计算机管理系统中有关信息的E-R 图。
(2)将该E-R 图转换为对应的关系模式。
(3)指出转换以后的各关系模式的范式等级和对应的候选码。
科室(科室名,科室地址,科室电话)病房(病房号,床位号,科室名)医生(工作证号,姓名,性别,出生日期,联系电话,职称,科室名)病人(病历号,姓名,性别,出生日期,诊断记录,主管医生,病房号)4. 排课是教学环节中的重要过程,该过程包括以下实体。
E-R图和关系数据库设计
民航航班管理数据模型
•实体集6 职工 PERSONNEL 属性: 职工号 EMP-NO:INT(6) 姓名NAME:CHAR(30) 住址ADDRESS:CHAR(30) 工资SALARY:INT(6) 职工号EMP-NO是本实体集的关键字。
•实体集7 飞行员 PILOTS 实体集PILOTS 无属性。
【例】实体“学生”,具有属性“学号”、“姓 名”、“性别”、“年龄”。
基本概念
• 所谓属性是指事物的某一方面的特征,属性可 以是基本属性或导出属性。例如,学生的学号 是一个简单属性;学生的家庭地址是一个复合 属性,它由简单属性“城市”、“街道”、 “门牌号”等组成。
• 属性可以是基本属性或导出属性。例如,一 个人的生日是基本属性,年龄是导出属性,年 龄可以根据生日和当前日期导出。
民航航班管理数据模型
•实体集3 航次DEPARTURES 属性: 日期DATE:INT(3) 本实体集的每一个实体是在某日起飞的航次。
•实体集4 机型PLANES 属性: 制造厂 MANUFACTURER:CHAR(10)
型号MODEL-NO:CHAR(10) 这两个属性组成实体集的关键字。 •实体集5 飞机AIRCRAFT 属性: 序号SERIAL-NO:INT(5)
order-no,quantity-order)
转换规则3
• 规则3:如果一个联系集的两侧标明的基数比是 1∶N(一对多联系),且联系无自身的属性,则 在1侧的实体集的关键字应加入到另一侧的实体转 换成的关系中,联系集本身可不必单独转换成关 系。
• 例如下图实体集CUSTOMER的关键字应加入到对 应于实体集ORDER的关系中去。经过转换后可得 关系模式为:
• 规则2:每一个联系集转换成一个关系, 该联系集自身所 拥有的属性,加入到该关系中去,而该关系的主关键字由 该联系集所联系的实体集的关键字组成。
数据库设计方法中e-r的主要内容
数据库设计方法中e-r的主要内容1.引言概述部分的内容可以根据以下模板进行编写:"引言是一篇文章中的开篇部分,它的作用是向读者介绍文章的背景和主题。
在数据库设计方法中,E-R(Entity-Relationship)模型是一种常用的概念模型,用于描述现实世界中实体和实体之间的关系。
本文旨在介绍数据库设计方法中E-R模型的主要内容和应用。
首先,我们会对E-R模型进行简要介绍,包括其概念和基本原理。
E-R 模型是一种用于可视化数据库结构的图形工具,运用了实体、关系和属性等基本概念来表达实体间的关系。
实体指的是现实世界中可以区分和独立存在的事物,关系则表示实体之间的联系。
通过在E-R图中绘制实体和关系的形式,我们可以直观地展示实体和关系之间的联系。
其次,我们会详细说明E-R模型的组成部分,主要包括实体关系和属性。
实体关系是指实体间的联系,可以是一对一、一对多或多对多的关系。
属性则表示实体和关系所具有的特征和性质,例如实体的名称、关系的性质等。
通过对实体关系和属性的定义和描述,我们可以更加准确地表达数据库中的数据结构。
最后,我们将对E-R模型的主要内容进行总结,并强调应用E-R模型进行数据库设计的重要性。
E-R模型提供了一种直观、易于理解和可视化的方法来描述数据库结构,使得数据库设计人员可以更好地理解和沟通数据库需求。
通过应用E-R模型进行数据库设计,可以提高数据库的可扩展性、灵活性和可维护性。
总之,本文将详细介绍数据库设计方法中E-R模型的主要内容,希望读者能够通过本文的阅读,对E-R模型有更加深入的了解,并在实际应用中灵活运用。
"根据这个模板,可以完善并编写文章1.1 概述部分的内容。
1.2 文章结构本文将按照以下结构进行讲解数据库设计方法中E-R模型的主要内容:2.正文:2.1 E-R模型介绍:2.1.1 概念:介绍E-R模型的基本概念,包括实体、属性、关系等,为后续的深入讨论打下基础。
数据库应用与设计-E-R模型(PDF)
称E部分参与R
24
参与在E-R图中的表示
customer部分参 与联系borrower
25
用双线连接联系 与完全参与的实体
Loan完全参与 联系borrower
存在依赖
存在依赖(Existence Dependency)
选课联系都有一个成绩作为其属性 同类联系的集合称为联系集
联系的元或度(Degree)
参与联系的实体集的个数称为联系的元 如学生选修课程是二元联系,供应商向工程供应零件则是
三元联系
17
基本概念
联系集 borrower
18
基本概念
实体集customer与account之间的联系集depositor具有属性access-date
参照完整性
一个实体集的属性是另一实体集的主码属性 如:职工实体集中的部门号属性
27
角色(Role)
基本概念
实体在联系中的作用称为实体的角色
当同一个实体集不止一次参与一个联系集时,为区别各实 体参与联系的方式,需要显式指明其角色
如学生与学生间的班长关系,职工与职工之间的经理关系 ,课程之间的先修关系
1-to-1 联系集的键
主键可为 {customer-id} 或者 {loan-number}.
49
1-m 和 m-m 联系集的键
主键是 {loan_number}
主键是 {customer-id, loan_number}
50
弱实体集
弱实体集(Weak Entity Set)
如果一个实体集的所有属性都不足以形成主码, 则称这样的实体集为弱实体集
E-R模型专题ppt课件
电话、邮编及地址等信息下相应出版社增购有关书籍。 我们约定,一个出版社可出版多种书籍,同一本书仅为 一个出版社出版,出版社名具有惟一性。 根据以上情况和假设,试作如下设计: (1)构造满足需求的E-R图。 (2)转换为等价的关系模式结构。
13
习题二 假定一个部门的数据库包括以下信息: 一个图书馆借阅管理数据库要求提供下述服务: (1)可随时一标识。 (2)可随时查询书籍借还情况,包括借书人单位、姓名、
借书证号、借书日期和还书日期。 我们约定:任何人可借多种书,任何一种书可为多个人所借,
5
例:学生选修课程
姓名
学号
系别
用椭圆表示实 体的属性
课程名 先修课
学分
用无向边 学生 m 选修 n 课程
把实体与
其属性连 接起来
联系的 数量
用矩形表示实
成绩
将参与联系的实 体用线段连接
体集,在框内
用菱形表示实
写上实体名
体间的联系
6
例题讲解
学生运动会模型 (1)有若干班级,每个班级包括:
班级号,班级名,专业,人数 (2)每个班级有若干运动员,运动员只能属于一个班,包括:
15
习题三 2.4假定一个部门的数据库包括以下信息: 职工的信息:职工号、姓名、地址和所在部门。 部门的信息:部门所有职工、部门名、经理和销售的产品。 产品的信息:产品名、制造商、价格、型号及产品的内部编
号。 制造商的信息:制造商名称、地址、生产的产品名和价格。 试画出这个数据库的E-R图。
16
答:ER图
1
内容: 1、基本概念 2、E-R模型建立 3、例题练习
数据库系统概念06数据库设计与ER模型(1)精品PPT课件
数据统系统 2020/10/12
3
数据库设计过程
数据库设计的任务及与应 用设计的关系?
DBS设计&数据库设计
创建一个数据库应用是一个复杂的任务,包括诸如
设计数据库模式
设计访问和更新数据的程序
以及设计控制数据访问的安全模式
等多个任务
数据库设计者必须与应用的用户进行交互以理解应用的需求,并
Book :数据库概念Ver.5 by A. Silberschatz
Chapter 6: Entity-Relationship Model
数据统系统 2020/10/12
1 1
项目驱动目标:
如何开展数据库设计和形成关系数据库:
一、数据库设计过程
二、E-R模型的基本组成要素
三、E-R模型中的约束
把它们用高层次(抽象)的形式表示出来,使得用户能够理解,然
后转化为设计的更低层次(细化)。 DBS设计与数据库设计的关联
问题1答案
数据库设计是数据库应用系统(DBS)设计中十分重要的环节之一。
DBS设计包括应用功能设计和数据库设计
数据库设计虽主要考虑数据存储与管理要求,但也应兼顾应用需求
(如访问效率,安全性,数据要求,……)
Example: specific person, company, event, plant
Entities have attributes 有属性
Example: people have names and addresses
An entity set is a set of entities of the same type that share the same properties. 实体集合有共性
ER模型
名称
型号 批次 存量
货号
货物
仓库
名称
型号 批次
存量
地点 仓库号
距离 类型
货号
货物
存放
仓库
面积
E-R模型的设计步骤
➢ E-R模型的设计步骤分为三个阶段:
要旨:化整为零,化零为整。 化整为零:进行子系统划分,即把整个应用系统分为若干个相对独
立的应用,这样就可以对每一个子系统分别进行设计, 得出局部E-R模型。 化零为整:把局部E-R模型进行整合,设计出总体E-R模型。
1. 设计局部E-R模型
关键是确定子系统中有哪些实体,实体又包含哪些属性,它们之间的联 系如何。
2. 设计总体E-R模型
对局部E-R模型进行综合:对相同实体进行合并;为属于不同的局部 E-R模型的实体间建立联系。
3. 在无向边上标注联系的类型。
实体联系模型的概念(续)
➢ E-R图中的基本联系方式
二元联系(两实体间的联系),包括三种类型
丈夫
1
夫妻
1
妻子
一对一
部门
1
拥有
n
职工
一对多
学生
m
选修
n
课程
多对多
实体联系模型的概念(续)
两实体间的多个联系
• 一个职工可参加多项工程; 一项工程由多个职工参加。
• 一个职工可负责多项工程; 一项工程只有一个负责人。
签约
k
电影
酬金
实体联系模型的概念(续)
➢ 子类和父类
子类除共享父类的公共属性外,它还有自己的特殊属性。
父类是子类的泛化实体,它具有其下属的所有子类的公 共属性。
kc第6讲-数据库设计(一)E-R模型方法
第6讲:数据库设计(一):E-R模型方法
项目驱动目标:
如何开展数据库设计和形成关系数据库: 一、数据库设计过程 二、E-R模型的基本组成要素 三、E-R模型中的约束 四、E-R图的绘制 五、E-R设计问题 六、E-R扩展特性
主要讨论问题:
1. 2. 3. 4. 5. 6. 数据库设计与应用设计有何关联 什么是E-R模型方法,有何作用 E-R模型的构成元素是什么 什么是E-R映射基数,分为哪几类 如何绘制E-R图 E-R设计中需要考虑的基本问题有哪些
二 E-R模型的基本组成要素
2-6 联系集只能 是二元的吗?
度Degree of a Relationship Set
• 定义:Refers to number of entity sets that participate in a relationship set.(联系集中参与的实体数目) • 二元联系集:Relationship sets that involve two entity sets are binary (or degree two). Generally, most relationship sets in a database system are binary. • 多元联系集:Relationship sets may involve more than two entity sets. Example: Suppose employees of a bank may have jobs (responsibilities) at multiple branches, with different jobs at different branches. Then there is a ternary relationship set between entity sets employee, job, and branch • Relationship sets between more than two entity sets are rare.
如何绘制E-R图并将其转换成关系数据模型
如何绘制E-R图并将其转换成关系数据模型E-R图是描述概念数据模型的主要工具,利用E-R图实现概念结构设计的方法叫做E-R方法;而概念设计是数据库设计的第一个阶段,所以E-R图是个极其重要的考点。
E-R图也称为实体-联系模型(E-----entity, R-----relation),由实体,属性,联系三个要素构成。
图形符号为:实体(长方形),属性(椭圆),联系(菱形)绘制E-R图的方法:1,绘制数据流程图2,数据字典分析3,确定局部E-R图:A,画出部分实体E-R图B,画出分E-R图,即实体之间的联系图:4,集成完整的E-R图,即全部实体之间的联系图E-R图转换成关系模型的方法:只要记住以下转换原则,即可:(1)一个实体转换为一个关系,实体的属性就是关系的属性,实体的码就是关系的码(2)一个联系也转换为一个关系,联系的属性即联系所连接的实体的码都转换为关系的属性,但是关系的码会根据联系的类型变化,如果是:1:1联系,两端实体的码都成为关系的候选码1:多联系,端实体的码成为关系的码多:多联系,两端实体码的组合成为关系的码(3)具有相同码的关系可以合并以自底向上设计概念结构的方法为例,它通常分为两步:第一步:首先要根据需求分析的结果(数据流图、数据字典等)对现实世界的数据进行抽象,设计各个局部视图即分E-R图。
第二步:集成局部视图。
概念结构是对现实世界的一种抽象,一般有三种抽象:⑴分类( is member of )⑵聚集 ( is part of)⑶概括 (is subset of ) 设计分E-R图的步骤是:⑴选择局部应用在需求分析阶段,通过对应用环境和要求进行详尽的调查分析,用多层数据流图和数据字典描述了整个系统。
设计分E-R图的第一步,就是要根据系统的具体情况,在多层的数据流图中选择一个适当层次的(经验很重要)数据流图,让这组图中每一部分对应一个局部应用,我们即可以以这一层次的数据流图为出发点,设计分E-R图。
[Word]如何绘制E-R图并将其转换成关系数据模型
如何绘制E-R图并将其转换成关系数据模型如何绘制E-R图并将其转换成关系数据模型E-R图是描述概念数据模型的主要工具,利用E-R图实现概念结构设计的方法叫做E-R方法;而概念设计是数据库设计的第一个阶段,所以E-R图是个极其重要的考点。
E-R图也称为实体-联系模型(E-----entity, R-----relation),由实体,属性,联系三个要素构成。
图形符号为:实体(长方形),属性(椭圆),联系(菱形)绘制E-R图的方法:1,绘制数据流程图2,数据字典分析3,确定局部E-R图:A,画出部分实体E-R图B,画出分E-R图,即实体之间的联系图:4,集成完整的E-R图,即全部实体之间的联系图E-R图转换成关系模型的方法:只要记住以下转换原则,即可:(1)一个实体转换为一个关系,实体的属性就是关系的属性,实体的码就是关系的码(2)一个联系也转换为一个关系,联系的属性即联系所连接的实体的码都转换为关系的属性,但是关系的码会根据联系的类型变化,如果是:1:1联系,两端实体的码都成为关系的候选码1:多联系,端实体的码成为关系的码多:多联系,两端实体码的组合成为关系的码(3)具有相同码的关系可以合并以自底向上设计概念结构的方法为例,它通常分为两步:第一步:首先要根据需求分析的结果(数据流图、数据字典等)对现实世界的数据进行抽象,设计各个局部视图即分E-R图。
第二步:集成局部视图。
概念结构是对现实世界的一种抽象,一般有三种抽象:⑴分类( is member of )⑵聚集 ( is part of)⑶概括 (is subset of ) 设计分E-R图的步骤是:⑴选择局部应用在需求分析阶段,通过对应用环境和要求进行详尽的调查分析,用多层数据流图和数据字典描述了整个系统。
设计分E-R 图的第一步,就是要根据系统的具体情况,在多层的数据流图中选择一个适当层次的(经验很重要)数据流图,让这组图中每一部分对应一个局部应用,我们即可以以这一层次的数据流图为出发点,设计分E-R图。
E-R图绘制ppt课件
数据模型
6)联系(Relationship):在现实世界中,事物内部及事物之间是普遍 联系的,这些联系在信息世界中表现为实体型内部各属性之间的联 系以及实体型之间的联系。两个实体型之间的联系可以分为三类: ①一对一联系(1:1) 例如,如果一个商品只卖给一个顾客,一个顾客也只能购买一个商 品,则商品与顾客之间具有一对一的联系。 ②一对多联系(1:n) 例如,一个人可以有多个移动电话号码,但一个电话号码只能卖给 一个人。人与移动电话号码之间的联系就是一对多的联系。 ③多对多联系(m:n) 例如,一门课程同时可以由若干学生选修,而一个学生同时也可以 选修若干门课程,课程与学生之间的联系是多对多的联系。
事、物,也可以是抽象的概念和联系。 2)属性(Attribute):具有的某一特性称为实体的属性,一个实体有 若干个属性来描述。 3)域(Domain):属性的取值范围称为该属性的域。 4)实体型(Entity Type):具有相同属性的实体成为同型实体,用实 体名及其属性名的集合来抽象和刻画同类实体,称为实体型。 5)实体集(Entity Set):同型实体的集合称为实体集。
仓库和商品的属性分别如下: 仓库——仓库号,地点,面积 商品——商品号,商品名,价格
在存放联系中要反映出存放商品的数量。
解:描述仓库和商品之间的E-R图可如下图所示
仓库号 商品号
地点
仓库
1
存放 n
商品
商品名
面积 数量
价格
【例 3】两个实体集之间的多对多的联系的绘制方法。
假设在某教务管理系统中,一个教师可以上多门课,一门课也 可以由多个老师去上。教师和课程之间是多对多的联系。 教师和课程可用以下属性来描述: 教师——教师号,教师名,职称 课程——课程号,课程名 在“讲授”联系中应能反映出教师的授课质量。
数据库设计之 E-R 图
课程解决问题
什么是E-R图? 什么时候使用? 怎么用?
数据库设计
数据库设计是从用户对 数据的需求出发,研究 并构造数据库的过程
设计步骤:
需求分析 实体定义 概念设计 关系定义 属性分配
E-R图
设计的目标
实现设计
满足应用功能的需求 良好的数据库性能
物理设计
实现、维护
员工
姓名 属于
实体-关系模型
在 E-R 图中显示的每个特性或属性映射为相应 表中的一个属性 员工
地址 名字
出生日期
工号 名字 出生日期 地址 邮编 电话 学历
员工
代号 工号 邮编 邮编 电话 电话 学历 学历
实体-关系模型
关系:实体间的关联
例如, 供应商和客户的关系中。这种关系代表了一个供 应商可以有多客户,一个客户也可以选择多个供应商。这 个关系被称为“选择”。
经理
部门 部门号(pk) 部门名 经理
员工 员工号(pk) 员工名 电话 部门(FK)
外键:当一个表的主关键字作为属性出现在另一个表中则在第二个表中称为外键(用于联系实体)
转换原则:多对多
把两实体中的主关键字放入到一个新实体中,成为新实体 的组合键 客户编号 客户名 商品编号 商品名 客户编号商品编号
客户
m
销售
m
商品
地址
联系方式 帐号 购买日期 数量 价格
库存量
对应数据库表
客户编号
C01 C02 C03 C04 C05
客户表
地址
北京 武汉 武汉 上海 武汉
顾客名
李明 王华 孙庆 赵国强 陈洁
联系方式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
E-R模型的设计方法分成三步; 模型的设计方法分成三步;
设计实体类型、 1、设计实体类型、确定属性和主码 设计实体之间的联系类型,确定是否有联系的属性。 2、设计实体之间的联系类型,确定是否有联系的属性。 3、写出关系模式
借阅人与书籍之间“借阅”联系 借阅人与书籍之间“借阅”联系M:N 书籍与出版社之间“出版”联系N:1 书籍与出版社之间“出版”联系N:1 管理员与借阅人之间“管理”联系M;N 管理员与借阅人之间“管理”联系 管理员与书籍之间“维护”联系M:N 管理员与书籍之间“维护”联系 管理员与出版社之间“设置”联系M:N 管理员与出版社之间“设置”联系
出生日期
年
月
日
属性的基本分类( 6.2 属性的基本分类(三)
一、属性类别分类(三) 属性类别分类( 导出属性 导出属性 可以由其他相互依赖的属性推导而来的属性
学号 系别
姓名
性别
学生 出生日期
年龄
演算得出
属性的基本分类( 6.2 属性的基本分类(四)
二、按照属性的取值特点分类 单值属性
同一实体的某个属性只能取一个值。 同一实体的某个属性只能取一个值。
指客观存在并且可以相互区别的事物,它可以是具体的人、 指客观存在并且可以相互区别的事物,它可以是具体的人、事、 也可以是抽象的概念或联系。 物,也可以是抽象的概念或联系。 用矩形描述实体,内部写明实体的名称。 用矩形描述实体,内部写明实体的名称。
联系(Relationship) 联系(Relationship)
2、弱实体 、
若一个实体对另一个实体具有很强的依赖联系, 若一个实体对另一个实体具有很强的依赖联系,同时该实体 主码的全部或部分通过其父实体中获得, 主码的全部或部分通过其父实体中获得,则称该实体为弱实 体。 双矩形符号表示若实体, 双菱形符号表示若实体联系 符号表示若实体 符号表示若实体联系。 用双矩形符号表示若实体,用双菱形符号表示若实体联系。
3、确定实体和联系属性以及实体类型的主码。 、确定实体和联系属性以及实体类型的主码。
本章节小结
模型的方法是数据库设计常用方法。 E-R 模型的方法是数据库设计常用方法。 属性
是实体或属性所具有的第一特性, 是实体或属性所具有的第一特性,引入分类识别基本或复 合属性;单值或多值属性;准确定位属性的类型、 合属性;单值或多值属性;准确定位属性的类型、有利于 更好地创建E 模型。 更好地创建E-R模型。
联系: 联系:
引入联系的元数、联系的连通词和联系的基数, 引入联系的元数、联系的连通词和联系的基数,准确定位 联系的类型和联系的实体,从而丰富E-R的内容。 联系的类型和联系的实体,从而丰富E 的内容。
E-R模型应尽量满足用户需求, 模型应尽量满足用户需求,
对特殊语义,引入依赖联系和弱实体、子类和父类的概念, 对特殊语义,引入依赖联系和弱实体、子类和父类的概念, 应用系统的设计要求。 应用系统的设计要求。
实体实体-联系模型的基本概念
实体 属性 实体类型 实体集 联系
客观存在的事物 事务的特征 属性的集合 实体的集合 属性之间的联系
每个属性都 有一个值域, 有一个值域, 可以是单值 或多值
E-R 模型的表示及例子
在E-R图中,基本的图形表示为: 图中,基本的图形表示为: 实体集 联系集
名称 名称
属性
名称
举例说明: 举例说明:
学号 系别 姓名 性别 课程号 课名 学生 选 学分 成绩 课程 类型
年龄
6.2 属性的基本分类
一、属性类别分类(一) 属性类别分类( 基本属性 不可再分的属性
零件
颜色 编码 名称 规格 产地
属性的基本分类( 6.2 属性的基本分类(二)
一、属性类别分类(二) 属性类别分类( 复合属性 可以继续进行分解的属性,属性可以嵌套。 可以继续进行分解的属性,属性可以嵌套。
数据库原理
第六章 E-R模型的设计方法 模型的设计方法
1
本章内容概要
E-R模型的基本元素 属性的基本分类 属性类别分类 属性取值特点分类 联系的设计方法 E-R模型的扩充 E-R模型的实例介绍 (略)
E6.1 E-R 模型的基本元素
E-R模型的基本元素:实体、属性、联系 模型的基本元素:实体、属性、 实体(Entity-Relationship): 实体(Entity-Relationship):
超市与职工之间“聘用”联系 超市与职工之间“聘用”联系1:N 超市与商品之间“经营”联系M:N 超市与商品之间“经营”联系M:N 商品与职工之间“销售”联系M:N 商品与职工之间“销售”联系
3、确定实体和联系属性以及实体类型的主码。 、确定实体和联系属性以及实体类型的主码。
确定各个实体属性:(属性1.2.3…) 确定各个实体属性:(属性 :(属性 ) 确定联系属性: 确定联系属性: 依据联系逐步写出关系模式,见教材142 依据联系逐步写出关系模式,见教材
6.3 联系的设计方法
三元联系中的三种关系 M:N:P (零件、项目、供应商之间的多对多的供应关系) 零件、项目、供应商之间的多对多的供应关系)
联系的基数 针对连通词的描述过于简单,使用联系的基数详细描述。 针对连通词的描述过于简单,使用联系的基数详细描述。 使用( 使用(Min,Max)最小连通数,最大连通数的基数描述 )最小连通数,
多值属性
多值属性是指同一实体的某个属性可以取多个值。 多值属性是指同一实体的某个属性可以取多个值。 多值属性用双椭圆 来表示。 多值属性用双椭圆 来表示。 多值属性存在大量冗余及操作异常,必须进行转换。 多值属性存在大量冗余及操作异常,必须进行转换。 方法一:将多值属性变换成为多个单值属性。 方法一:将多值属性变换成为多个单值属性。 电话 手机 家庭电话 办公电话
子类与父类
就是继承的概念: 模型中它们具有相同的实体标识符。 就是继承的概念:在E-R模型中它们具有相同的实体标识符。 模型中它们具有相同的实体标识符 表示父类, 用两端双线矩形 表示父类,又用中间加圈的无向线 连接父类与子类。 连接父类与子类。
E6.5 E-R 模型的实例介绍
请同学们看教材,P141[例6.8] 请同学们看教材, 例 问题:某超市连锁公司业务管理系统的E-R模型 问题:某超市连锁公司业务管理系统的 模型 1、确定实体类型:超市、职工、商品三类实体 、确定实体类型:超市、职工、商品三类实体 2、确定联系类型: 、确定联系类型:
指不同的实体之间,实体集内实体与实体间以及组成实体的各 指不同的实体之间, 属性的关联。 属性的关联。 用菱形表示联系,内部写明联系的名称。 用菱形表示联系,内部写明联系的名称。并用无向线段分别将 有关联的实体连接起来。 有关联的实体连接起来。
属性(Attriute) 属性(Attriute)
指实体或联系所具有的某一特性。通常一个实体是由若干个属 指实体或联系所具有的某一特性。 性来描述的, 性来描述的,我们把能够唯一标识实体的属性或属性集成为实体 标识符(主码),而实体只有一个实体标识符。 ),而实体只有一个实体标识符 标识符(主码),而实体只有一个实体标识符。 用椭圆表示属性,内写明属性名称,用无向线段连接相应实体。 用椭圆表示属性,内写明属性名称,用无向线段连接相应实体。
联系的连通词: 联系的连通词
联系涉及的实体集之间四题对应的方式,也就是说联系的类型。 联系涉及的实体集之间四题对应的方式,也就是说联系的类型。 连通词关系有三种: 连通词关系有三种:1:1; 1:N; M:N。 。 一元联系中的三种关系: 排列关系(选手之间) 一元联系中的三种关系:1:1 排列关系(选手之间) 1:N 领导关系(领导和职工之间) 领导关系(领导和职工之间) M:N 组合关系(零件之间) 组合关系(零件之间) 二元联系中的三种关系: 管理关系(班主任与班级之间) 二元联系中的三种关系:1:1 管理关系(班主任与班级之间) 1:N 聘用关系(车队与司机之间) 聘用关系(车队与司机之间) M:N 讲授关系(教师与课程之间) 讲授关系(教师与课程之间)
方法二:将多值属性转化成实体进行联系( 方法二:将多值属性转化成实体进行联系(1:N)。 )。 员工 电话 具有 电话 电话类别 电话号码
属性的基本分类( 6.2 属性的基本分类(五)
二、按照属性的取值特点分类 空 值
空值( Value)表示无意义、或值存在但没有该信息、 空值(Null Value)表示无意义、或值存在但没有该信息、 或不能确定是否存在的属性。 或不能确定是否存在的属性。 在不能确定其值情况,可以使用Null Null空值表示属性 在不能确定其值情况,可以使用Null空值表示属性
车队 M (1,10) 聘用 N (1,1) N M 教师 (0,3) 讲授 (1,5) 课程
司机
6.4 E-R 模型的扩充
依赖联系和弱联系 1、依赖联系 、
在联系中,一个实体的存在必须以另一个实体的存在为前提。 在联系中,一个实体的存在必须以另一个实体的存在为前提。 例如:电话实体依赖于使用的人(员工)而有存在的意义。 例如:电话实体依赖于使用的人(员工)而有存在的意义。
E6.5 E-R 模型的实例介绍
请同学们看教材,P142[例6.9] 请同学们看教材, 例 问题:以图书借阅管理系统的设计E-R模型 问题:以图书借阅管理系统的设计 模型 1、确定实体类型:借阅人、书籍、出版社、管理员 、确定实体类型:借阅人、书籍、出版社、 2、确定联系类型:五个联系: 、确定联系类型:五个联系:
6.3 联系的设计方法
联系的元数(度数):是指它涉及的实体集的数目, 联系的元数(度数):是指它涉及的实体集的数目, ):是指它涉及的实体集的数目
一元联系(又称递归联系):同一实体集内部实体之间联系。 一元联系(又称递归联系):同一实体集内部实体之间联系。 ):同一实体集内部实体之间联系 二元联系:两个不同实体集实体之间的联系。 二元联系:两个不同实体集实体之间的联系。 三元联系:三个不同实体集实体之间的联系。 三元联系:三个不同实体集实体之间的联系。