查看更多
当前 - 选择题 - 数据库理论
中等
单选题
2017年5月第33题
#第二版教材
#必须掌握

给定关系模式R < U ,F >, U= {A,B,C,D ,E} , F = {B→A ,D→A ,A→E ,AC→B },则 R 的候选关键字为 (问题1) ,分解ρ = { R1(ABCE),R2(CD) } (问题2)

浓缩知识点

关系模式候选键判定可通过属性闭包法:先锁定潜在属性或属性组,计算其属性闭包,若闭包覆盖全部属性且无冗余属性,即为候选键;也可借助有向图法,寻找能遍历所有属性节点的最小属性集合,需留意多属性联合决定的依赖对遍历路径的影响。此外要明确,包含候选键的属性集是超键,含冗余属性的超键不属于候选键。

无损连接分解判定:二元分解的充要条件是两个子模式的交集属性集,能决定其中一个子模式的全部属性;针对多子模式分解,可采用无损分解表验证法,依据函数依赖逐步标记表中元素,若最终存在一行全为对应原始属性标记,则为无损分解,该分解能保证还原连接后不丢失原关系信息。

函数依赖保持性判定:需将原函数依赖集分别投影到每个分解后的子模式上,得到各子模式的函数依赖集,合并这些依赖集后,若能通过阿姆斯特朗公理(自反、增广、传递三大公理,及推导而来的合并、分解、伪传递等规则)推导出原所有函数依赖,则分解保持函数依赖,可维持原数据约束,避免数据不一致风险,反之则无法保持原有约束。

正确答案
A

本题考察的是候选键判定、无损分解判定与函数依赖保持性
求候选键可用属性闭包法;二元分解无损的充要条件是交属性集对某一分解分量具决定性;保持性判断看各函数依赖能否由分解后各关系上的投影依赖并集推出

问题 1:先验证 CD 的闭包。以 CD 为起点,由 D→A 得到 A,由 AC→B 得到 B,由 B→A 仍为 A,由 A→E 得到 E,故 CD⁺={A,B,C,D,E}=U,CD 能唯一决定全体属性,且 C⁺、D⁺以及与 C 或 D 组合的其他二元闭包均不能覆盖 U,因此CD 为最小超键即候选键,A 选项正确。
B 选项 ABD的闭包为 ABD 起步,B→A,A→E,可得 {A,B,D,E},缺少 C,不能成为键
C 选项 ACD的闭包覆盖全体属性,但其中含有冗余属性 A,因为CD 已经是键,故 ACD 不是最小,不是候选键。
D 选项 ADE的闭包最多由 A→E 得到 E,仍缺少 B、C,不是键
也可以通过有向图方法来做,但是要注意细节。AC 共同决定 B,用红色标注。同时 D 决定 A,通过传递律我们知道 DC决定 B。D 决定 E。所以 CD 是候选码。

问题 2:本分解为 R→R1(ABCE)、R2(CD)。交集为 R1∩R2=C。二元分解无损的判据是**(R1∩R2)→R1 或 (R1∩R2)→R2 在 F⁺ 中成立**。检查 C→ABCE 或 C→CD 是否成立。由给定 F={B→A,D→A,A→E,AC→B} 出发,C 单独无法推出任何新属性,因此C↛ABCE 且 C↛CD,分解有损
再看保持性。把 F 投影到 R1、R2。投影到 R1 可得 B→A、A→E、AC→B;投影到 R2 由于只含 C、D,无非平凡依赖。原依赖中 D→A 不在并集投影中可推出,因而不保持函数依赖
据此,既不无损,也不保持,故 D 选项正确。

联系我们
隐私协议
用户协议
微信公众号
知乎
小红书
浙ICP备2021029036号
@2022-2026
嘉兴市安芯网络科技有限公司 版权所有