问题 单项选择题

设关系模式R<U,F>,其中U=H,I,J,K,L),若F=H→IJ,J→K,IJK→L,L→H,L→K),则F的最小函数依赖集Fmin= (14) }。关系模式R的候选关键字有 (15) 个,R属于 (16)

A.1NF
B.2NF
C.3NF
D.BCNF

答案

参考答案:A

解析: 求最小函数依赖集的过程如下:
(1)在F中,首先把左边相同的函数依赖合并,得到{H→IJ,J→K,IJK→L,L→HK);
(2)在F中,因为有J→K和IJK→L,所以可以合并成IJ→L,即得到{H→IJ,J→K,IJ→L,L→HK};
(3)把第(2)步得到的函数依赖集化简,进一步得到{H→I,H→J,J→K,IJ→L,L→H,L→K}。
(4)在第(3)步得到的函数依赖集中,有{L→H,H→J,J→K},由传递性规则,可以推导出L→K,因此,L→K是多余的,需要删除,最后得到最小函数依赖集为{H→I,H→J,J→K,IJ→L,L→H}。
在最小函数依赖集中,所有函数依赖的左边属性的并集为{HIJL},下面分三种情况讨论:
(1)因为有L→H,H→I,H→J,所以可选候选关键字为{L}。
(2)因为有H→I,H→J,IJ→L,所以可选候选关键字为{H}。
(3)因为有IJ→L,J→K,L→H,所以可选候选关键字为{IJ}。
因此,关系模式R的候选关键字有3个,分别为{L}、{H}和{IJ},非主属性为{K}。因为有J→K成立,所以K是对候选关键字{IJ}的部分依赖,故关系模式R不是2NF。

问答题
多项选择题