数据库系统原理范式分解——保持函数依赖与无损连接性练习题

是否保持函数依赖

如果F上的每一个函数依赖都在其分解后的某一个关系上成立,则这个分解是保持依赖的(这是一个充分条件)

无损连接定理

关系模式R(U,F)的一个分解,ρ={R1<U1,F1>,R2<U2,F2>}具有无损连接的充分必要条件是:U1∩U2→U1-U2 €F+ 或U1∩U2→U2 -U1€F+

验证算法
  ρ={R1<U1,F1>,R2<U2,F2>,…,Rk<Uk,Fk>}是关系模式R<U,F>的一个分解,U={A1,A2,…,An},F={FD1,FD2,…,FDp},并设F是一个最小依赖集,记FDi为Xi→Alj,其步骤如下:

① 建立一张n列k行的表,每一列对应一个属性,每一行对应分解中的一个关系模式。若属性Aj Ui,则在j列i行上真上aj,否则填上bij;

② 对于每一个FDi做如下操作:找到Xi所对应的列中具有相同符号的那些行。考察这些行中li列的元素,若其中有aj,则全部改为aj,否则全部改为bmli,m是这些行的行号最小值。

如果在某次更改后,有一行成为:a1,a2,…,an,则算法终止。且分解ρ具有无损连接性,否则不具有无损连接性。

对F中p个FD逐一进行一次这样的处理,称为对F的一次扫描。

③ 比较扫描前后,表有无变化,如有变化,则返回第② 步,否则算法终止。如果发生循环,那么前次扫描至少应使该表减少一个符号,表中符号有限,因此,循环必然终止。
----------------------------------------------------------------------

练习题

1、

关系模式R(A1, A2, A3, A4, A5,A6),给定函数依赖集合F={ A2→(A3,A5); (A1,A3)→A6; (A2,A6)→ A4 },则关于R既保持依赖又无损连接地分解成第三范式,分解正确的是_____
A.p={R1(A2,A3, A5), R2(A1,A3,A6), R3(A2,A4,A6) }
B.p={R1(A2,A3,A5),R2(A1,A3,A6),R3(A2,A4,A6),R4(A1,A2) }
C.p= {R1(A2,A3.A5), R2(A1,A2,A3,A4,A6)}
D.p={R1(A1,A2,A3,A5),R2(A2,A4,A6)}

问题解析:可以求出候选码为(A1,A2),得出函数F的最小函数依赖集为F={ A2→(A3,A5), (A1,
A3)→A6, (A2,A6)→ A4 },ρ={R1(A2A3A5),R2(A1A3A6),R3(A2A4A6)};经过判断此关系不满足无损分解的条件,因此把候选码A1A2加入关系中,就达到满足了保持了函数依赖和无损连接性的目的

2、

给定关系模式R(U, F),其中U={A1, A2,A3,A4,A5,A6},给定函数依赖集合F=A1→(A2,A3); A3→A4; (A2,A3)→(A5,A6);A5→A1 },有一个分解r=R1(A1,A2,A3,A4),
R2(A2,A3,A5,A6)},问该分解____
A、既具有无损连接性,又保持函数依赖
B、不具有无损连接性,但保持函数依赖
C、具有无损连接性 ,但不保持函数依赖
D、既不具有无损连接性,又不保持函数依赖

问题解析:
分成了两个关系属性时,找出两个关系中的共同属性,即A2,A3因此A2,A3为函数依赖集的候选码。
①在函数依赖集F中有(A2,A3)→(A5,A6),因此该分解具有无损连接性。
②R1(A1,A2,A3,A4)与A1→(A2,A3); A3→A4相对应而R2(A2,A3,A5,A6)没有与(A2,A3)→(A5,A6);A5→A1 相对应,因此该分解不保持函数依赖。

3、

给定关系模式R(U, F), 其中U={A1, A2,
A3,A4,A5,A6},给定函数依赖集合
F=A1→(A2,A3); A3→A4; (A2,A3)→(A5,A6);
A6→A1 },有一个分解r=R1(A1 ,A2,A3,A4),
R2(A3,A4,A5,A6)},问该分解___
A、既具有无损连接性,又保持函数依赖
B、不具有无损连接性,但保持函数依赖
C、具有无损连接性,但不保持函数依赖
D、既不具有 无损连接性, 又不保持函数依赖

问题解析:
分成了两个关系属性时,找出两个关系中的共同属性,即A3,A4因此A3,A4为函数依赖集的候选码。
①在函数依赖集F中没有有(A2,A3)→A 因此该分解不具有无损连接性。
②R1(A1,A2,A3,A4)与A1→(A2,A3); A3→A4相对应而R2(A3,A4,A5,A6)没有与(A2,A3)→(A5,A6),A6→A1 相对应,因此该分解不保持函数依赖。

4、

对连锁商店的管理,设计了关系模式:商店(商店,商品部,商品,商品部经理),下 列说法正确的是__
A、不满足第2范式
B、满足第2范式但不满足第3范式
C、满足第3范式
D、其他都不对

问题解析:
可以得到函数依赖集:(商店,商品)→商品部,(商店,商品部)→商品部经理,求得候选码为(商店,商品),从依赖集中看出不存在部分函数依赖,但是存在传递依赖,因此满足第2范式但不满足第3范式

5、

一般情况,企业会将从一个供应商处一次所进的多种货物办理一次入库,因此设计了关系模式:入库单(单号,日期,库房,供应商,物品,数量,金额),下列说法正确的是___
A、不满足第2范式
B、满足第2范式但不满足第3范式
C、 满足第3范式
D、其他都不对

问题解析:可以得到函数依赖集 单号→(日期,库房,供应商),物品→(金额),(单号,物品)→数量,求得候选码为(单号,物品),因为存在部分函数依赖,因此该依赖集只满足1NF即不满足第二范式。

6、

设有关系模式W(C,P,S,G,T,R),其中各属性的含义是: C课程,P教师,S学生,G成绩, T时间,R教室,根据定义有如下数据依赖集D={ C→P, (S,C)→G, (T,R)→C, (T,P)-→R,
(T,S)-→R}。关系模式W的一个候选键是__W的规范化程度最高达到____

A、(S,C), 1NF
B、(T,R), 3NF
C、(T,P), 4NF
D、(T,S),2NF

问题解析:容易求得候选键为(T,S),可以看出在依赖集D中不存在部分函数依赖,因此最起码是达到2NF。因为候选键为(T,S),有(S,T)→(S,T,R,C,G)在函数依赖集中却有C→P, (T,R)→C,(T,S)-→R得到(S,T)→C→P,因此该函数依赖集中存在传递依赖不符合3NF的条件。

7、

关系模式R(A1, A2, A3,A4,A5,A6),如果A1→(A3,A4); (A2, A4)→A5; (A3,A5)→A6,则关于R的说法正确的是___
A、即不存在对候选键的部分函数依赖,又不存在对候选键的传递函数依赖
B、存在对候选键的部分函数依赖,但不存在对候选键的传递函数依赖
C、不存在对候选键的部分函数依赖,但存在对候选键的传递函数依赖
D、既存在对候选键的部分函数依赖,又存在对候选键的传递函数依赖

问题解析:可以求得候选码为(A1,A2),因为A1→(A3,A4),所以存在对候选键的部分函数依赖,因为候选码为(A1,A2),有(A1,A2)→(A1,A2,A3,A4,A5,A6),又因为在依赖集中有(A3,A5)→A6,因此就会有(A1,A2)→(A3,A5)→A6即存在对候选键的传递函数依赖

8、

关系模式R(A1,A2, A3, A4, A5, A6),如果A1→(A3, A4);
(A2,A4)→A5; (A3,A5)→A6,则R的候选键为___
A、A1
B、(A1, A2)
C、(A1, A2, A4)
D、(A1, A3, A5)

9、

在关系模式R(U,F)中,如果X-→Y,存在X
的真子集X1,使X1-→Y,称函数依赖X-→Y为___
A、平凡函数依赖
B、部分函数依赖
C、完全函数依赖
D、传递函数依赖.

  • 19
    点赞
  • 140
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
战德臣数据库MOOC模拟练习题解析主要是对数据库相关知识的应用和理解进行考察和分析。这些题目旨在帮助学生巩固和加强对数据库概念、操作和优化的认识和应用能力。 解析这些练习题,首先需要对题目进行仔细阅读和理解。了解题意后,根据问题的要求,运用数据库知识进行建模、查询或优化等方面的操作。 对于涉及数据库建模的题目,需要根据题目描述,设计合适的数据库结构,包括表的数量、字段及其数据类型,以及表与表之间的关系。同时,要注意保证数据库范式,避免冗余数据和数据一致问题的出现。 对于查询题目,需根据题目描述,编写合适的SQL语句进行查询。要注意查询条件和字段选择的准确,以及查询结果的正确。相关知识点包括:SELECT语句的使用、连接操作、条件筛选、排序、分组、聚合函数等。 对于能优化题目,需根据题目描述,分析数据库操作的瓶颈,提出相应的优化方案。可以从索引优化、查询语句优化、表结构优化等方面进行思考和答题。 在解析这些练习题时,需要熟悉数据库的相关概念和操作技巧,如关系型数据库管理系统(例如MySQL、Oracle等)的使用,SQL语言的基本语法和常用操作等。同时,还需了解数据库的设计原则、范式理论、查询优化技巧、索引设计等内容。 通过解析这些练习题,可以提高对数据库知识的理解和应用能力,进一步夯实数据库相关的基础知识,为后续的数据库开发和管理工作打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值