12.15关系数据库规范化理论常见试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.关系规范化中的操作异常有哪些?它是由什么引起的?解决的办法是什么?
插入异常、删除异常、更新异常
原因是关系中存在不好的函数依赖
解决办法是消除这些不好的函数依赖,使用关系模式分解的办法,将一个关系模式分解为多个关系模式
2 .第一范式、第二范式和第三范式的关系的定义是什么?
第一范式:不包含多值数据
第二范式:存在的依赖都是完全函数依赖,不存在部分函数依赖
第三范式:没有传递依赖关系
3.什么是部分依赖?什么是传递依赖?请举例说明。
部分依赖:假如不存在重名{班委(学号,姓名,课程号,课程)},学号→姓名,
而课程号和姓名没有关系
传递依赖:{教授(姓名,办公室,办公室地址)},姓名-→办公室,办公室-→办公室地址
4.第三范式的表是否一定不包含部分依赖关系?
是的,因为要想满足第三范式,首先要满足第二范式,而第二范式明显要求不包含部分依赖关系
5.主键只有一个属性,如果它是第一范式,那么是否一定也是第二范式?
是的,因为只有一个主键只有一个属性,那么根本上不存在部分函数依赖,所以也是第二范式
6. 设有关系模式:学生修课管理(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。设一名学生可以选修多门课程,一门课程可以被多名学生选修。一名学生有唯一的所在系,每门课程有唯一的课程名和学分。
请指出此关系模式的候选键,判断此关系模式是第几范式的;
若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键。
候选码(学号,课程号)
由于存在学号-→姓名,课程号-→课程名,所以存在部分函数依赖,所以不是第二范式学生表(学号,姓名,所在系,性别)
课程表(课程号,课程名,学分)
成绩表(学号,课程号,成绩)
7.设有关系模式:学生表(学号,姓名,所在系,班号,班主任,系主任),其语义为:一名学生只在一个系的一个班学习,一个系只有一名系主任,一个班只有一名班主任,一个系可以有多个班。
请指出此关系模式的候选键,判断此关系模式是第几范式的;
若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键。
候选码(学号)
由于不存在部分函数依赖关系,所以属于第二范式
由于存在学号-→所在系,所在系-→系主任,所以存在传递函数依赖,所以不属于第三范式
学生表(学号,姓名,所在系,班号)
班级表(班号,班主任)
系表(系名,系主任)
8.设有关系模式:授课表(课程号,课程名,学分,授课教师号,教师名,授课时数),其语义为:一门课程(由课程号决定)有确定的课程名和学分,每名教师(由教师号决定)有确定的教师名,每门课程可以由多名教师讲授,每名教师也可以讲授多门课程,每名教师对每门课程有确定的授课时数。
指出此关系模式的候选键,判断此关系模式属于第几范式;
若不属于第三范式,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键。
候选码(课程号,授课教师号)//候选码必须要把括号里面的所有属性都能“决定”
由于存在课程号-→课程名,授课教师号-→授课时数,所以存在部分函数依赖,不属于第二范式
课程表(课程号,课程名,学分)
教师表(授课教师号,教师名)
授课表(课程号,授课教师号,授课时数)