我正在尝试理解功能依赖
假设我们有R与{A,B,C,D,E}和FDs A-> B,BC-> E和ED-> A.
有什么关键,在3NF或BCNF中是R?
答案 0 :(得分:1)
这里的关键是 - ACD , BCD 和 ECD 。由于关系 R 的每个属性在每个键中至少出现一次,因此关系 R 中的所有属性都是主要属性。
请注意,如果某个关系具有所有素数属性,那么它已经在3NF中。
因此给定关系 R 在3NF。
要进入BCNF,对于每个功能依赖 X-> Y , X 应该是一个关键。我们看到第一个依赖项( A-> B )违反了这一点,因此 R 的关系不在BCNF中。
答案 1 :(得分:0)
键是 - ACD,BCD和ECD。
Prime属性将是(A,B,C,D,E),因为所有属性都是主键。
请注意,如果关系具有所有主要属性,则它已经在3NF中。
因此给定的关系R在3NF中。
要进入BCNF,对于每个功能依赖关系X-> Y,X应该是超级密钥。我们看到第一个依赖(A-> B)违反了这个,因此关系R不在BCNF中。
答案 2 :(得分:0)
候选键是 - ACD,BCD和ECD。 Prime属性是(A,B,C,D,E),因为它们都在主键中。 现在,首先我们检查BCNF的关系 对于BCNF,在FD中,属性中的左侧必须是超级密钥,因为您可以注意到没有任何FD遵循此条件 对于3NF,在FD中有两个条件: 1.左侧是超级钥匙 2.如果第一个条件失败,则同一FD的右侧必须是主要属性。 如果关系遵循这些条件,那么它在3NF中,并且我们可以注意到所有属性都是主要属性,以下关系R在3NF但在BCNF中不存在。