确定最高的正常形式

时间:2010-11-05 06:14:25

标签: database normalization

我真的不知道如何解决这个问题。我已经阅读了所有正常形式,但仍然无法理解它。我希望有人可以帮助我理解它。

关系模式是R(A,B,C,D,E,F),其中(A - > BCD,BC - > DE,B - > D,D - > A)。

最高正常形式是什么?为什么?

感谢任何帮助,谢谢。

4 个答案:

答案 0 :(得分:2)

此处最高的Normal格式为1NF,因为共有3个候选键,即AF,DF,BF。因此,从给定的FD集合中存在部分FD,并且根据规则,在2NF中不允许部分FD。所以最高范式是1NF。

答案 1 :(得分:1)

我相信你在这里可以达到的最高范式是3NF或BCNF。 我说这是因为:

  • 1NF需要消除重复组,属性是原子的。你没有任何重复的群体 默认情况下已满足1NF的要求。
  • 2NF和3NF处理如何构建关于Functional Dependencies的关系。 我看到你描述了以下功能依赖性:(A - > BCD,BC - > DE,B - > D,D - > A)。鉴于这些, 你可能会将关系分为2NF,3NF和可能的BCNF。
  • 4NF及以上处理多值事实。你没有描述任何这些,所以这是合理的 假设没有。有些人可能认为任何BCNF关系都没有多值的事实 存在也是在4NF - 我不想进入那个,因为它只是归结为“玻璃半满/空” 辩论的类型。

我没有花时间整理所有的FD(毕竟这是你的功课),但我会密切关注 到FD:BC -> DD -> AA -> B

3NF和BCNF之间的区别有点微妙。这slide showWikipedia article 应该帮助解决它。

答案 2 :(得分:-1)

这里最高的普通形式是1NF

因为共有3个候选键,即AF,DF,BF。

因此,从给定的FD集合中存在部分FD,并且根据规则,在2NF中不允许部分FD。所以最高范式是1NF。

答案 3 :(得分:-2)

F不会出现在任何地方。

有两种可能性。无论是运动的重点,还是运动都有缺陷。