第06章练习题.doc
数据库系统原理练习题
第6章
一、选择题
- 关系数据库规范化是为了解决关系数据库中( )的问题而引入的。
A.提高查询速度
B.插入、删除、更新异常和数据冗余
C.保证数据的安全性和完整性
D.恢复数据库 - 关系模式中每个分量都是不可分的数据项,则关系模式属于( )
A. 1NF B. 2NF
C. 3N D. BCNF - 若R∈2NF,则R的每个( )
A.非主属性部分依赖于码 B.非主属性完全依赖于码
C.主属性部分依赖于码 D.主属性完全依赖于码 - 消除了非主属性对码传递函数依赖的2NF的关系模式,必定属于( )
A.1NF B.2NF C. 3NF D. BCNF - 关系模式中,满足2NF的模式( )
A.可能是1NF B.必定是1NF
C.必定是3NF D.必定是BCNF
二、关系模式规范化 - 设有关系模式: 选修(姓名,专业,课程,任课教师,成绩)
假设:每个学生在一个专业学习;每门课程有一个任课教师;每个学生选修的每门课程只有一个成绩;姓名、课程无重名。
(1)请写出选修关系中存在的基本函数依赖集。
姓名->专业
课程->任课教师
(姓名,课程)->成绩
(姓名,课程)->专业 部分函数依赖
(姓名,课程)->成绩 部分函数依赖
(2)找出关系模式的候选码,指出哪些是主属性?那些是非主属性。
候选码:(姓名,课程)
主属性:姓名,课程
非主属性:专业,任课教师,成绩
(3)分析关系模式最高属于第几范式?为什么?
1NF
关系模式中任一属性都为原子属性,存在非主属性部分依赖于主码
(4)如果选修关系不属于3NF,请将其分解为第3NF模式集。
S(姓名,专业)
C(课程,任课教师)
SC(姓名,课程,成绩)
- 现有一个描述学生、课程以及选课信息的关系模式:
SelectCourse(学号,姓名,年龄,课程名称,成绩,学分)。
其中:每个学生可选多门课程,每门课程只选一次;每个学生选修的每门课程有一个成绩;
每门课程都规定一定的学分。
(1)请写出SelectCourse关系中存在的基本函数依赖集。
学号 ->姓名
学号->年龄
课程名称->学分
(学号,课程名称)->成绩
(学号,课程名称)->姓名 部分函数依赖
(学号,课程名称)->年龄 部分函数依赖
(学号,课程名称)->学分 部分函数依赖
(2)找出关系模式的候选码。
(学号,课程名称)
(3)分析关系模式最高属于第几范式?为什么?
1NF
关系模式中的每个属性均为原子属性,但存在部分函数依赖于主码。
(4)请将SelectCourse关系模式分解为第3NF模式集。
S(学号,姓名,年龄)
C(课程名称,学分)
SC(学号,课程名称,成绩)
- 假设某商业集团数据库中有一关系模式R如下:
R(商店编号,商品编号,数量,部门编号,负责人)。
如果规定:
(1)每个商店的每种商品只在一个部门销售。
(2)每个商店的每个部门只有一个负责人。
(3)每个商店的每种商品只有一个库存量。
请回答下列问题:
(1)写出R关系中存在的基本函数依赖集。
(商店编号,商品编号)->部门编号
(商店编号,部门编号)->负责人
(商店编号,商品编号)->数量
(2)找出关系模式的候选码。
(商店编号,商品编号)
(3)分析关系模式最高属于第几范式?为什么?
2NF
该关系模式中的所有属性均为原子属性,并且没有非主属性部分依赖于主码,但存在传递依赖。所以不满足3NF范式
(4)如果R不属于3NF,请将R分解为第3NF模式集。
(商店编号,商品编号,数量,部门编号)
(商店编号,部门编号,负责人)