
5.1 简要解释下列术语:函数依赖、平凡函数依赖与非平凡函数依赖、完全函数依赖与部分函数依赖、传递函数依赖、函数依赖集闭包、属性闭包、无损连接分解、保持依赖分解、1NF、2NF、3NF、BCNF。
*5.2 简要解释下列术语:无关属性、正则覆盖。
5.3 说明数据冗余可能引起的问题,给出插入异常、删除异常和更新异常的实例。
5.4 列出图5-17所示关系实例中存在的所有非平凡、最简化形式的函数依赖。
| A | B | C | D | E |
| 1 | 2 | 3 | 4 | 5 |
| 1 | 4 | 3 | 4 | 5 |
| 1 | 2 | 4 | 4 | 1 |
| 2 | 4 | 5 | 5 | 2 |
5.5 列出图5-18所示关系实例中存在的所有非平凡、最简化形式的函数依赖。
| 学号 | 姓名 | 学院 | 专业 | 课程 | 成绩 |
| 04001 | 张桃花 | 信息学院 | 计算机 | 数据库 | 92 |
| 04002 | 王井冈 | 信息学院 | 计算机 | 数据库 | 85 |
| 04002 | 王井冈 | 信息学院 | 计算机 | 操作系统 | 92 |
| 04003 | 李杏花 | 信息学院 | 信息管理 | 金融学 | 85 |
| 04004 | 赵长江 | 管理学院 | 市场营销 | 会计学 | 92 |
| 04004 | 赵长江 | 管理学院 | 市场营销 | 管理学 | 88 |
| 04005 | 陈鄱阳 | 管理学院 | 工商管理 | 会计学 | 88 |
5.6 利用Armstrong公理推导下列三个推论:
(1) 合并律(union rule):若有 且 ,则有 。
(2) 分解律(decomposition rule):若有 ,则有 且 。
(3) 伪传递律(pseudotransitivity rule):若有 且 ,则有 。
5.7 对于关系模式r(R)=r(A, B, C, D, E)和函数依赖集F={A BC, CD E, B D, E A},试计算:
(1) A+,B+;
(2) r(R)的候选码。
5.8 对于关系模式r(R)=r(A, B, C, D, E)和函数依赖集F={A BC, CD E, B D, E A},证明分解r1(R1)=r1(A, B, C)、r2(R2)=r2(A, D, E)是无损连接分解。
5.9 对于关系模式r(R)=r(A, B, C, D, E, G)和函数依赖集F={AB C, AC B, AD E, B D, BC A, E G},判断下列分解是否是保持依赖分解?是否是无损连接分解?
(1) {AB, BC, ABDE, EG};
(2) {ABC, ACDE, ADG}。
5.10 对于关系模式r(R)=r(A, B, C, D),对下列每个函数依赖分别完成:①列出r(R)的候选码;②指出r(R)最高满足哪种范式(1NF、2NF、3NF或BCNF);③若r(R)不属于BCNF,则将其分解为满足BCNF。
(1) F1={C D, C A, B C};
(2) F2={ABC D, D A};
(3) F3={A B, BC D}。
*5.11 对于关系模式r(R)=r(A, B, C, D, E, F),对下列每个函数依赖分别完成:①列出r(R)的所有候选码;②判断r(R)是否满足3NF?③若r(R)不属于3NF,则将其分解为满足3NF。
(1) F1={A→BDE, B→AE, AC→F, BC→AD};
(2) F2={A→CDF, F→A, AE→C, EF→BD}。
