概念模型的表示方法——E-R模型•E-R模型,又称E-R图、E-R方法、实体-联系方法(1)E-R图的4个基本成分(图素):表示实体:表示实体属性:表示联系:表示实体与属性、实体与联系、联系与属性之间的连接•例1.篮球实体及其属性上图仅仅是单一的实体,没有反映实体间的联系。篮球品牌型号颜色皮质价格•例2.厂长与工厂的联系(1:1)厂长工厂管理厂长号姓名专业厂号厂名行业11•例3.仓库与产品的联系(1:N)仓库产品存放仓库号地点面积货号品名规格数量1n•例4.学生与课程的联系(M:N)学生课程学习学号姓名性别课号课名学分成绩出生日期mn(2)如何画E-R图1)先画出实体及其属性;2)再画局部的分E-R图;3)最后画出综合总E-R图。在后面我们将给出画综合E-R图的实例。补充知识:如何将E-R图转化为数据模型(关系模式)•要点:1、实体的处理:一个实体→转化为一个关系(Access、VFP中的Table或FOXPRO中的库文件)。包括实体的全部属性,并确定主键。2、联系的处理(1)1:1联系转换时,只要在其中任一方实体的关系中增加对方实体的主键。(此时联系本身往往并无属性)转换举例一编号姓名年龄班主任班级号班级名专业班级管理11班主任(编号,班级号,姓名,年龄)班级(班级号,班级名,专业)在“班主任”这一方的关系中增加对方实体的主键一个实体转化为一个关系(2)1:n联系将“1”方主键纳入“n”方关系,如果联系有属性,把联系的属性也纳入“n”方关系。转换举例二仓库号地点面积仓库货号品名价格产品存放1n仓库(仓库号,地点,面积)产品(货号,品名,价格,仓库号,数量)数量“1”方主键纳入“n”方关系中联系的属性也纳入“n”方关系中一个实体转化为一个关系(3)m:n联系除了被联系实体各为一个关系外,联系也是一个关系(即共三个关系)。该关系的属性包括:双方实体的主键,联系本身的属性。学号姓名年龄学生课程号课程名学时数课程选课mn学生(学号,姓名,年龄)课程(课程号,课程名,学时数)成绩选课(学号,课程号,成绩)转换举例三被联系实体各为一个关系联系也是一个关系,其属性包括双方实体的主键,联系本身的属性。•从建立E-R模型到数据模型综合应用举例:例:某工厂物资管理的E—R模型与数据模式的建立(1)E-R模型1)实体及其属性物资管理所涉及的实体包括:职工、仓库、零部件以及供应商。其中每一个实体都具有相应的属性:职工:有职工号、姓名、年龄、岗位等属性。仓库:有仓库号、面积、类型等属性。供应商:有供应商号、名称、地址、电话、账号(、联系人、经理)等属性。零件:有零件号、名称、规格、单价(、计量单位、质量等级)等属性。(此处省略了实体及其属性图)2)分E-R图除了实体有属性,在画E-R图时,联系也可能产生新的属性。以上实体之间的联系如下:•仓库与职工之间是一对多的联系,二者的联系是“工作”。•仓库与零件之间具有一对多的联系,二者的联系是“储存”。•供应商与零件之间是多对多的联系,二者的联系是“供应”•以上实体间联系的分E-R图如下:仓库职工工作1n仓库零件库存量储存1n供应商零件供应量供应mn3)综合的总E-R图•画综合的总E-R图,只要将分E-R图中同名的实体重叠在一起。注意:在综合的E-R图中,同一实体只出现一次。供应供应商零件供应量储存库存量仓库工作职工mnn11n仓库职工工作1n仓库零件库存量储存1n供应商零件供应量供应mn供应供应商零件供应量储存库存量仓库工作职工mnn11n上图显示了从分E-R图到综合E-R图的对应关系(2)数据模型1)对仓库与职工的1:n联系,有:仓库(仓库编号,类型,面积)职工(职工编号,仓库编号,姓名,年龄,岗位)这里的联系没有产生新的属性,只要把一方主键加入到多方的属性中即可。2)对仓库与零件的1:n联系,有:仓库(仓库编号,类型,面积)零件(零件号,仓库编号,名称,规格,单价,库存量)由于在“仓库与职工”联系的转化中已有“仓库”这一关系模式,且属性相同,故不必重复建立。•这里的联系产生了新的属性“库存量”,故应该将其纳入n方关系。3)对供应商与零件的m:n联系,有:供应商(供应商号,名称,地址,电话,账号)零件(零件号,名称,规格,单价)供应(供应商号,零件号,供应量)组合主键这里“零件”的属性比前面“仓库与零件”联系中“零件”的属性少,且都包含在前一“零件”属性中,故取前一个零件的关系模式。•综合以上各联系,得出对应“物资管理”综合E-R图的五个关系模式:职工(职工编号,仓库编号,姓名,年龄,岗位)仓库(仓库编号,类型,面积)零件(零件号,仓库编号,名称,规格,单价,库存量)供应商(供应商号,名称,地址,电话,账号)供应(供应商号,零件号,供应量)E—R图向关系数据模型的转换过程示意图E-R图关系模型DBMS判断树例2、根据期末考试成绩和平时作业情况给出总评成绩的判断树。不及格不及格例2.邮寄普通包裹收费标准如下:(1)若收件地点在1000公里以内,且重量少于30公斤,每公斤2元。(2)若收件地点在1000公里以外,且重量少于30公斤,每公斤2.5元。(3)若重量大于30公斤,则无论距离远近,超重部分都加收0.5元。则有如下判断表:决策规则号1234条件1.距离=1000公里YNYN2.重量=30公斤NNYY应采取的行动(收费)1.重量×2×2.重量×2.5×3.30×2+(重量-30)×2.5×4.30×2.5+(重量-30)×3×练习:请将本决策问题用判断树表示出来。