扫一扫二维码
进群一起备考
查看更多
当前 - 选择题 - 数据库理论中等
单选题
2019年5月第23题
收藏
分享
#数据库系统
#数据库理论
#第二版教材
#凯恩建议必须掌握
给定关系模式R<U,F>,其中:属性集U = {A,B,C,D,E},函数依赖集F={AC→B,B→CD}。关系R(问题1),且分别有(问题2)。
正确答案D
凯恩解析
此题考察的是关系模式的候选键和主属性/非主属性的判断。
我们可以通过分析函数依赖求闭包(或者画有向图)来找出候选键,并通过候选键确定主属性和非主属性。
问题 1:
首先,给定的属性集是 {A, B, C, D, E},函数依赖集为 {AC → B, B → CD}。
- AC → B 说明,A 和 C 可以决定 B。
- B → CD 说明,B 可以决定 C 和 D。
要找出候选键,首先要理解候选键是能够唯一标识关系中的所有元组的属性集。通过函数依赖,我们可以发现:
AC 可以决定 B,进而通过 B 可以决定 C 和 D,因此 AC 可以决定 {A, B, C, D}。
但是,AC 不能决定 E。因此,E 需要与其他属性组合,才能决定所有属性。
通过组合 A, B, C,可以找到一个候选键是 ABE,同理,ACE 也是一个候选键。
AC 不能单独成为候选键,因为它无法决定 E。因此,选项 A 和 B 都不正确。
通过分析可得,选项 D "无正确答案" 是正确的。
问题 2:主属性是任何候选键中的属性,而非主属性是未包含在任何候选键中的属性。我们已经确定 ABE 和 ACE 是候选键。主属性是 {A, B, E, C},非主属性是 {D}。因此,主属性有 4 个,非主属性有 1 个。
所以,正确答案是 A. 1个非主属性和4个主属性。
你也可以通过函数依赖图(有向图) 来辅助求解候选键,如下所示:

