给定关系模式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)。
本题考察的是候选键判定、无损分解判定与函数依赖保持性。
求候选键可用属性闭包法;二元分解无损的充要条件是交属性集对某一分解分量具决定性;保持性判断看各函数依赖能否由分解后各关系上的投影依赖并集推出。
问题 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 选项正确。
