当前位置:文档之家› 6数据库综合练习(一)习题及答案

6数据库综合练习(一)习题及答案


5.设有系、教师、学生、课程等实体,其中:
每一个系包括系名、系址、系主任姓名、办公电话等属性;
教师实体包括工作证号码、教师名、出生日期、党派等属性;
学生实体包括学号、姓名、出生日期、性别等属性;
课程实体包括课程号、课程名、预修课号等属性。
设一个系可以有多名教师,每个教师教多门课程, 一门课程由一个教师教。每一个学生可选多门课
分解为 3 范式为: R1(ABC,D,E) F(ABC ->DE); R2(B,C); R3(D,E) F(D ->E)
(2)试问 R 是 BC 范式吗,如果是请说明理由,如果不是请将 R 分解为 BC 范式。 解:不是 BC 范式;分解为 BC 范式: R11(ABC,D); R12(ABC,E); R2(BC,D); R3(D,E)
学生:学号
选课:课程号,学号
任课:课程号 领导:工作证号、学号
5) 系达到 3NF;教师达到 3NF;课程达到 2NF;学生达到 3NF;选课达到 3NF;任课达到 3NF;领
导达到 1NF;
6) 不是;
课程 1{课程号,课程名}; 课程 2{课程名,预修课号}
领导 1{工作证号码,系名};领导 2{学号,系名}
(3)各关系模式仅存在一个或两个函数依赖,没有多值依赖。各关系模式主键为单属性或全码键, 不存在部分函数依赖,也没有传递函数依赖。该题中所有关系模式均满足 3NF。且各关系模式中决 定因素都是键,满足 BCNF。
4.设有关系模式 R(A,B,C,D,E),F 是 R 上成立的函数依赖集,F={ABC→DE, BC→D,D→E}。 (1)试问 R 是 3 范式吗,如果是请说明理由,如果不是请将 R 分解为 3 范式。 解:不是 3 范式 R 属于 1NF。 由于候选键是 ABC。而非主属性 D 和 E 部分函数依赖于候选键 ABC,因此 R 不是 2NF, 只能是 1NF。
单位名
电话
1.
(1)
1
单位
属于
员工号
姓名
N 员工
工程名
M 参加
性别
地点
设备号
M 设备
工程
1
N
供应 P
姓名 供应商
产地
电话
(2) 由概念模型-关系模型转换规则,至少可以得到 6 个关系模式。 单位(单位名,电话) 员工(员工号,姓名,性别) 工程(工程名,地点) 供应商(供应商姓名,电话) 设备(设备号,产地) 供应(工程名,供应商姓名,设备号)
2.设有一个关系模式 R(S#, C#, G, TN, D), 其属性 S#为学号,C#课程,G 成绩,TN 任课教师,D 教
师所在系。其中学号和课程号分别与其代表的学生和课程一一对应;学生选修的课程都有成绩;每
门课程只有一个任课教师,每个教师可以有多门课程,教师没有重名,一个教师只属于一个系。
(1) 试根据上述语义确定函数依赖集。
(3)R 分解为如下关系模式:
R1(S#,C#,G) 不存在部分函数依赖及传递函数依赖,满足 3NF。
R2(S#,D)
不存在部分函数依赖及传递函数依赖,满足 3NF。
R3(C#,TN) 不存在部分函数依赖及传递函数依赖,满足 3NF。
R4(TN,D) 不存在部分函数依赖集传递函数依赖,满足 3NF。
程,每门课程只有一个预修课程,每一个学生选修一门课程有一个成绩,试根据以上语义完成下述要
求。
1)画出 E-R 图。
2)将以上的实体及实体集间的联系用关系模型表示出来
3)写出各关系模式中的函数依赖集
4)写出各关系的关键字。
5)写出各关系模式的规范化级别。
6)所有的关系模式的规范化级别都达到 3NF 了吗?若没有达到请将其分解以达到 3NF。
课程:F={课程号->课程名,课程名->预修课号}
学生:F={学号->姓名,学号->出生日期,学号->性别,姓名->出生日期,姓名->性别}
选课:F={(课程号,学号)->成绩}
任课:F={课程号->工作证号码}
领导:F={工作证号码->系名,学号->系名}
4) 系:系名
教师:工作证号码 课程:课程号
3.某企业有多个下属单位,每个单位有多个员工。一个员工仅属于一个单位,且一个员工仅在一个 工程中工作;一个工程中有多个员工。有多个供应商为各个工程供应设备。单位属性有单位名,电 话。员工属性有:员工号、姓名、性别。设备属性有:设备号、产地。供应商属性有姓名、电话。 工程属性有:工程名,地点。
要求完成:1. 根据上段对企业的描述建立企业 E-R 模型。 2. 把 E-R 模型转换为相应的关系模式。 3. 试分析各关系模式满足第几范式?
(2) 关系 R 属于第几范式?
(3)试将关系 R 规范为第 3 范式,并说明理由。
解:R(S#,C#,G,TN,D)
由题意可得关系模式 R 的函数依赖集:
(1)F={S#C#->G, S#C#->TN, S#->D, C#->TN, TN->D}
(2)函数依赖集存在部分函数依赖,关系模式 R 属于 1NF。
解: 1) 系名
学号
姓名
出生日期
性别
系址
系主任姓名 办公电话
工作证号码
教师名 出生日期

学生
1 领导
M
教师
系名 1
n
选修
M n
课程
成绩
党派
课程号
课程名
预修课号
2) 系(系名、系址、系主任姓名、办公电话) 教师(工作证号码、教师名、出生日期、党派) 课程(课程号、课程名、预修课号) 学生(学号、姓名、出生日期、性别) 选课(课程号,学号,成绩) 任课(工作证号码,课程号) 领导(工作证号码,学号,系名) 3) 系:F={系名->系址,系名->系主任姓名,系名->办公电话,系主任姓名->办公电话} 教师:F={工作证号码->教师名,工作证号码->出生日期,工作证号码->党派,教师名->出生日期, 教师名->党派}
1.现有如下关系模式: R(A#,B#,C,D,E) 其中:A#B#组合为码, R 上存在的函数依赖有 A #B#→E,B#→C,C→D
1)该关系模式满足 2NF 吗?为什么? 2)如果将关系模式 R 分解为: R1(A#,B#,E) R2(B#,C,D) 指出关系模式 R1 和 R2 的码,并说明该关系模式最高满足第几范式?(在 1NF~BCNF 之内)。 3)将关系模式 R 分解到 BCNF。 解: 1)不是 2 范式,因为 C 部分依赖于码 A#B# 2)R1 的码为 A#B#,R2 的码为 B# R1 最高位 BCNF,R2 最高为 2NF。 3)R1(A#,B#,E) R21(B#,C) R22(C,D)
6.某企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂 按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘 用职工有聘期和工资。工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规 格,职工的属性有职工号、姓名。
(1)根据上述语义画出 ER 图,在 ER 图中需注明实体的属性、联系的类型及实体的标识符。 (2)将 ER 模型转换成关系模型,并指出每个关系模式的主键和外键。 (3)分析每个关系模式已经达到第几范式。
解数量
产品编号
产品名
规格
聘期
工厂 l 聘用 n
职工
m 生产
工资
n 产品
职工号
姓名
(2) 关系模型为: 工厂(工厂编号,厂名,地址)
主键是工厂编号 产品(产品编号,产品名,规格)
主键是产品编号 生产(工厂编号,产品编号,计划数量)
主键是(工厂编号,产品编号) 外键是(工厂编号,产品编号) 职工(职工号,姓名,聘期,工资,工厂编号) 主键是职工号 外键是工程编号 (3) 每个关系模型都达到了 BCNF
相关主题