有关关系模式规范化问题 急

来源:百度知道 编辑:UC知道 时间:2024/06/25 00:51:51
有关系模式R(A,B,C,D),R上的函数依赖集F={A->C, C->A, B->AC, D->AC}
1.求F的最小等价依赖集Fm
2.求R的关键字
3.R属于第几NF
4.将R分解成3NF,并保持无损连接性和函数依赖保持性。

1、将 F 中依赖右部属性单一化:

F 1 : A->C C->A B->A B->C D->A D->C

在 F 1 中去掉多余的函数依赖:

因为 B->A , A->C 所以 B->C 是多余的

又因为 D->A , A->C 所以 D->C 是多余的

F 2 : A->C C->A B->A D->A

函数依赖集的最小集不是唯一的,本题答案不唯一。

因为 F 2 中所有依赖的左部都是单属性,所以不存在依赖左部多余的属性。

所以 Fm : A->C C->A B->A D->A

2、 因为 DB 在 F 中的函数依赖的右部中均未出现,所以候选关键字一定包含 BD ,而( BD ) + =ABCD 因此 BD 是 R 惟一的候选关键字。
3、因为存在部分函数依赖,所以是1NF
4、消除部分及传递依赖后,即达到3NF要求。
考虑 A->C ,所以将 ABCD 分解为 AC 和 ABD 。 AC 已是 3NF ,进一步分解 ABD 选择 B->A ,把 ABD 分解为 AD、AB 和 BD ,此时 AD、AB 和 BD 均为 3NF ,所以 ρ ={AC , BA , DA , BD}