ER图转换关系模式
- 格式:docx
- 大小:123.63 KB
- 文档页数:6
该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表示接纳人数。
1:1联系的转化
第一步:联系形成的关系独立存在:
职工表(职工号,姓名,年龄)主码:职工号产品表(产品号,产品名,价格)主码:产品号负责(职工号,产品号)主码:职工号或产品号合并方案1:“负责”与“职工”两关系合并:职工(职工号,姓名,年龄,产品号)
产品(产品号,产品名,价格)
合并方案2:“负责”与“产品"两关系合并:职工(职工号,姓名,年龄)
产品(产品号,产品名,价格,职工号)
1:n联系的转化
步骤一:联系形成的关系独立存在.
仓库(仓库号,地点,面积)主码:仓库号
产品(产品号,产品名,价格)主码:产品号
仓储(仓库号,产品号,数量)主码:产品号
合并后方案:联系形成的关系与n端对象合并。
仓库(仓库号,地点,面积)
产品(产品号,产品名,价格,仓库号,数量)
m:n联系的转化
该模型可转换为三个关系模式:
学生(学号,姓名,性别,年龄)主码:学号
课程(课程号,课程名,学分)主码:课程号
选课(学号,课程号,成绩)主码:学号+课程号
这个ER图可转换4个关系模式:
商店(商店编号,商店名,地址)
职工(职工编号,姓名,性别,业绩,商店编号,聘期,月薪)商品(商品号,商品名,规格,单价)
销售(商店编号,商品号,月销售量)。
ER模型转换为关系模型规则
转换规则如下:
1.实体转换为关系表:
将ER模型中的每个实体转换为一张关系表。
每个实体的属性对应关系表的列。
2.属性转换为关系表的列:
实体的属性被转换为关系表的列,属性的名称作为列名,属性的数据类型作为列的数据类型。
3.主键属性:
如果一个实体的属性被定义为主键,那么这个属性将成为关系表的主键。
4.外键属性:
5.一对一关系:
如果两个实体之间的关系是一对一的,那么可以在任意一个实体的关系表中增加对方实体的主键,作为外键。
6.一对多关系:
如果两个实体之间的关系是一对多的,那么可以在多的一方实体的关系表中增加一的一方实体的主键,作为外键。
7.多对多关系:
如果两个实体之间的关系是多对多的,那么需要创建一个中间表来表示这种关系。
中间表中的每一行记录表示两个实体之间的关系,而关系的属性则作为中间表的列。
在完成ER模型到关系模型的转换后,可以通过对关系表进行插入、更新、删除等操作来操作数据。
同时,可以通过关系表的连接操作来获取两个实体之间的关系。
关系模型的优势在于它能够提供简单且强大的数据操作方式,同时保证数据的完整性和一致性。
如何将ER图转换成关系模式集
在ER图中,主要是实体类型和联系类型。
1、实体类型的转换
(“——”表⽰对应关系)
实体类型——关系模式
实体的属性——关系模式的属性
实体标识符——关系模式的键
2、联系的转换
⼀元联系较简单,三元联系过于复杂,在这⾥只介绍⼆元联系类型的转换。
例⼦:
在⼀个ER图中,有三个实体类型:系、教师、课程;四个联系类型:主管、聘⽤、任教。
其中,实体、联系、属性的具体关系略去。
注:下划线表⽰主键,删除线表⽰外键。
步骤如下:
(1)讲三个实体类型转换成三个模式
系(系编号,系名,电话)
教师(教师编号,姓名,性别,职称)
课程(课程编号,学分,课程名称)
(2)
1: 1 联系:“主管”,(可以理解为⼀个⽼师负责⼀个系,⼀个系职能被⼀个⽼师管理),
在“系”模式中加⼊教师编号(教师编号为外键)
1:N联系:如“开设”联系,(⼀个系可以开设多个课程),因此在“课程”模式中加⼊系编号(系编号为外键)。
课程(课程编号,学分,课程名称,系编号)
类似地,可以将其他1:N联系写出来
(3)
M:N联系
如:“任教”,⼀个⽼师可以教多门课程,⼀门课程也可以被多名⽼师教。
任教(教师编号,课程编号,学分)
其中,教师编号,课程编号均为键。
学分是“任教”联系的属性。
这样做下来,就可以将ER图中实体类型和联系类型转换成关系模式了。
1:1联系得转化
第一步:联系形成得关系独立存在:
职工表(职工号,姓名,年龄) 主码:职工号
产品表(产品号,产品名,价格) 主码:产品号
负责(职工号,产品号)主码:职工号或产品号合并方案1:“负责”与“职工”两关系合并:
职工(职工号,姓名,年龄,产品号)
产品(产品号,产品名,价格)
合并方案2:“负责”与“产品"两关系合并:
职工(职工号,姓名,年龄)
产品(产品号,产品名,价格,职工号)
1:n联系得转化
步骤一:联系形成得关系独立存在.
仓库(仓库号,地点,面积)主码:仓库号产品(产品号,产品名,价格)主码:产品号仓储(仓库号,产品号,数量) 主码:产品号合并后方案:联系形成得关系与n端对象合并。
仓库(仓库号,地点,面积)
产品(产品号,产品名,价格,仓库号,数量)m:n联系得转化
该模型可转换为三个关系模式:
学生(学号,姓名,性别,年龄)主码:学号
课程(课程号,课程名,学分)主码:课程号
选课(学号,课程号,成绩) 主码:学号+课程号
这个ER图可转换4个关系模式:
商店(商店编号,商店名,地址)
职工(职工编号,姓名,性别,业绩,商店编号,聘期,月薪) 商品(商品号,商品名,规格,单价)
销售(商店编号,商品号,月销售量)。
1: 1联系的转化
第一步:联系形成的关系独立存在:
职工表(职工号,姓名,年龄)主码:职工号
产品表(产品号,产品名,价格)主码:产品号
负责(职工号,产品号)主码:职工号或产品号合并方案1: “负责”与“职工”两关系合并:
职工(职工号,姓名,年龄,产品号)
产品(产品号,产品名,价格)
合并方案2:“负责”与“产品”两关系合并:
职工(职工号,姓名,年龄)
产品(产品号,产品名,价格,职工号)
步骤一:联系形成的关系独立存在。
仓库(仓库号,地点,而积)主码:仓库号产品(产品号,产品名,价格)主码:产品号仓储(仓库号,产品号,数量)主码:产品号合并后方案:联系形成的关系与n端对象合并。
仓库(仓库号,地点,面积)
产品(产品号,产品名,价格,仓库号,数量)
该模型可转换为三个关系模式:
学生(学号,姓名,性别,年龄)
课程(课程号,课程名,学分)
选课(学号,课程号,成绩)
主码: 主码: 主码: 学号 课程号 学号+课程号
职工号]1姓名]年龄
职工
这个ER图可转换4个关系模式:
商店(商店编号,商店名,地址)
职工(职工编号,姓名,性别,业绩,商店编号,聘期,月薪)商品(商品号,商品名,规格,单价)
销售(商店编号,商品号,月销售量)。