ER模型转换关系模式
- 格式:pptx
- 大小:1.56 MB
- 文档页数:15
该ER图有7
部门(部门号,名称,负责人)
车队(车队号,名称,地址)
司机(司机号,姓名,执照号,电话,工资)
车辆(车牌号,车型,颜色,载重)
保险公司(保险公司号,名称,地址)
维修公司(维修公司号,名称,地址)
开销(顺序号,费用类型,费用,日期,经手人)
实体之间有7个联系,
其中6个是1:N联系,1个是M:N联系。
其中联系的属性如下:
调用(出车编号,出车日期,车程,费用,车辆数目)
保险1(投保日期,保险种类,费用)
保险2(投保日期,保险种类,费用)
根据ER图和转换规则,7个实体类型转换成7个关系模式,
1个M:N联系转换成1个关系模式,共8个关系模式,
部门(部门号,名称,负责人)
车队(车队号,名称,地址)
司机(司机号,姓名,执照号,电话,工资,车队号,保险公司号,投保日期,保险种类,费用)
车辆(车牌号,车型,颜色,载重,车队号,保险公司号,投保日期,保险种类,费用,维修公司号)保险公司(保险公司号,名称,地址)
维修公司(维修公司号,名称,地址)
开销(顺序号,车牌号,费用类型,费用,日期,经手人)
调用(出车编号,车队号,部门号,出车日期,车程,费用,车辆数目)
(注:专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分来自网络,供参考。
可复制、编制,期待你的好评与关注)。
二、概念结构设计1、系统概念模型图1选课系统概念模型E-R 图(注:本例中上课时间可以抽象成实体,也可以抽象成属性。
) 2、详细说明(1)系统涉及的实体集● 班级实体集:具有属性班级名称和选课学分限制。
● 学生实体集:具有属性学号、姓名、性别和生日。
● 课程实体集:具有属性课程号、课程名、学分、授课教师、接纳人数。
● 上课时间实体集:具有属性时间。
(2)系统涉及的联系● 一个班级可以有多个学生,一个学生只能属于一个班级,所以班级和学生之间的联系为1:M 的联系。
● 一个班级可以有多门必修课程,一门课程是多个班级的必修课,所以班级和课程之间的必修联系是M :N 的联系。
● 一个学生课以选修多门课程,一门课程可以被多个学生选修,所以学生和课程之间的联系是M :N 的联系。
班级学分限制班级名学生学号 姓名性别生日属于必修课程选修上课时间上课时间授课教师接纳人数课号课名学分1mmnmmnn一门课程可以有多个上课时间,同一时间内可以有多门课程在上课,所以课程和上课时间的联系是M:N的联系。
三、逻辑结构设计将E-R模型转换为关系模式(1)班级实体集可以转换为关系CLASS(CLASSNAME,MAXCREDIT,MINCREDIT)CLASSNAME表示班级名称,MAXCREDIT表示最大学分限制,MINCREDIT表示最小学分限制。
(2)学生实体集可以转换为关系STUDENT(STUDENTID , NAME , SEX , BIRTHDAY)STUDENTID表示学号,NAME表示姓名,SEX表示性别,BIRTHDAY表示生日(3)课程实体可以转换为关系COURSE(COURSEID, COURSENAME, CREDIT, TEACHER, ACCEPTION)COURSEID表示课程号,COURSENAM表示课程名,CREDIT表示学分,TEACHER表示授课教师,ACCEPTION表示接纳人数。
数据库基础:E-R图转化为关系模式⼀、将ER模型转化成关系数据库
1. ⼀般规则:
(1) ⼀个实体类型对应⼀个关系模式,实体的属性为关系模式的属性
(2) 对于⼆元联系:规则如下图
2.举例
学⽣运动会模型:
(1)有若⼲班级,每个班级包括: 班级号,班级名,专业,⼈数
(2)每个班级有若⼲运动员,运动员只能属于⼀个班,包括:运动员号,姓名,性别,年龄
(3)有若⼲⽐赛项⽬,包括:项⽬号,名称,⽐赛地点
(4)每名运动员可参加多项⽐赛,每个项⽬可有多⼈参加
(5)要求能够公布每个⽐赛项⽬的运动员名次与成绩
(6)要求能够公布各个班级团体总分的名次和成绩
1.E-R图
2.数据库逻辑模型(包括各个表的名称和属性.并指出每个表的主键和外键)
班级(班级号,班级名,专业,⼈数)主键:班级号
运动员(运动员号,姓名,性别,年龄,班级号)主键:运动员号外键:班级号
项⽬(项⽬号,项⽬名,⽐赛地点)主键:项⽬号
⽐赛(运动员号,项⽬号,名次,成绩)主键:运动员号,项⽬号外键:运动员号,项⽬号。
1:1联系的转化
第一步:联系形成的关系独立存在:
职工表(职工号,姓名,年龄)主码:职工号产品表(产品号,产品名,价格)主码:产品号负责(职工号,产品号)主码:职工号或产品号合并方案1:“负责”与“职工”两关系合并:职工(职工号,姓名,年龄,产品号)
产品(产品号,产品名,价格)
合并方案2:“负责”与“产品"两关系合并:职工(职工号,姓名,年龄)
产品(产品号,产品名,价格,职工号)
1:n联系的转化
步骤一:联系形成的关系独立存在.
仓库(仓库号,地点,面积)主码:仓库号
产品(产品号,产品名,价格)主码:产品号
仓储(仓库号,产品号,数量)主码:产品号
合并后方案:联系形成的关系与n端对象合并。
仓库(仓库号,地点,面积)
产品(产品号,产品名,价格,仓库号,数量)
m:n联系的转化
该模型可转换为三个关系模式:
学生(学号,姓名,性别,年龄)主码:学号
课程(课程号,课程名,学分)主码:课程号
选课(学号,课程号,成绩)主码:学号+课程号
这个ER图可转换4个关系模式:
商店(商店编号,商店名,地址)
职工(职工编号,姓名,性别,业绩,商店编号,聘期,月薪)商品(商品号,商品名,规格,单价)
销售(商店编号,商品号,月销售量)。
1、设某工厂数据库中有四个实体集。
一是“仓库”实体集,属性有仓库号、仓库面积等;二是“零件”实体集,属性有零件号、零件名、规格、单价等;三是“供应商”实体集,属性有供应商号、供应商名、地址等;四是“保管员”实体集,属性有职工号、姓名等。
设仓库与零件之间有“存放”联系,每个仓库可存放多种零件,每种零件可存放于若干仓库中,每个仓库存放每种零件要记录库存量;供应商与零件之间有“供应”联系,一个供应商可供应多种零件,每种零件也可由多个供应商提供,每个供应商每提供一种零件要记录供应量;仓库与保管员之间有“工作”联系,一个仓库可以有多名保管员,但一名保管员只能在一个仓库工作。
(1)试为该工厂的数据库设计一个ER模型,要求标注联系类型,可省略实体属性。
(2)根据转换规则,将ER模型转换成关系模型,要求标明每个关系模式的主键和外键。
保管员(职工号,姓名,仓库号)仓库(仓库号,仓库面积)零件(零件号,零件名,规格,单价)存放(仓库号,零件号,库存量)供应商(供应商号,供应商名,地址)供应(零件号,供应商号,供应量)2、为体育部门建立数据库,其中包含如下信息:(1)运动队:队名、主教练,其中队名惟一标识运动队。
(2)运动员:运动员编号、姓名、性别、年龄。
(3)运动项目:项目编号、项目名、所属类别。
其中:每个运动队有多名运动员,每名运动员只属于一个运动队;每名运动员可以参加多个项目,每个项目可以有多个运动员参加。
系统记录每名运动员参加每个项目所得名次和成绩以及比赛日期。
(1)根据以上叙述,建立ER模型,要求标注联系类型。
(实体的属性可以省略)(2)根据转换规则,将ER模型转换成关系模型,要求标明每个关系模式的主键和外键(如果存在)。
3、学生运动会模型:(1)有若干班级,每个班级包括: 班级号,班级名,专业,人数(2)每个班级有若干运动员,运动员只能属于一个班,包括:运动员号,姓名,性别,年龄(3)有若干比赛项目,包括:项目号,名称,比赛地点(4)每名运动员可参加多项比赛,每个项目可有多人参加(5)要求能够公布每个比赛项目的运动员名次与成绩(6)要求能够公布各个班级团体总分的名次和成绩解题要求:(1)画出每个实体及其属性关系、实体间实体联系的E-R图.(2)根据试题中的处理要求:完成关系模型转换,并指出每个表的主键和外键。
ER模型转换为关系模型规则
(1)一个实体型转换为一个关系模式,实体的属性就是关系的属性,实体的码(关键字)就是关系的码。
(2)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
如果转换为一个独立的模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选键。
如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。
(3)一个1:n联系可以转换为一个独立的关系模式,也可以与任意n端对应的关系模式合并。
如果转换为一个独立的模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。
如果与n端实体对应的关系模式合并,则需要在该关系模式的属性中加入1端关系模式的码和联系本身的属性
(4)一个m:n联系转换为一个独立的关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。
(5)三个以上实体间的一个多元联系可以转换为一个独立的关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。