【问题标题】:Normalise relation规范化关系
【发布时间】:2015-09-08 05:21:23
【问题描述】:

我想在 1NF、2NF 和 3NF 上对此进行标准化。 我知道一点如何在实践中规范化表格,但我不知道从哪里开始使用字母。谢谢

R (A, B, C, D, E, F, G, H, I, J)

AB -> C
A -> DE
B -> F
F -> GH
D -> IJ

L: A, B

M: D, F

R: C, E, G, H, I, J

AB*
ABC
ABCDE
ABCDEF
ABCDEFGH
ABCDEFGHIJ

这里如何找到主键?

【问题讨论】:

  • 这是一道作业题吗?字母是什么?向我们展示你的进步。
  • 是的。它给出了与以下函数的关系。这就是整个练习。我还没有取得任何进展。对不起。
  • 好的,当你这样做的时候告诉我们,违反政策,不做任何尝试就为人们做作业。
  • 嘿,我取得了一些进展。你能检查一下吗..谢谢@PhilipDevine

标签: relational-database normalization relation


【解决方案1】:

你总是从最低的范式开始检查并向上移动。如果您没有知道这些字母代表什么,那么您必须假设 它在 1NF 中。

要检查 2NF:
这里的关键是AB。当 X->Y 如果 右手边non -prime 并且不是 X 的一部分,left-hand side 是键的真子集(这里是 AB )。所以在这里你可以直接看到一个函数依赖A->DE违反了这一点,因此它不在2NF中。现在继续检查 3NF。由于这似乎是一个家庭作业问题,因此只有在您在这方面取得一些进展后,我才会愿意为您提供进一步的帮助。

我会建议你观看these 视频。 (尤其是 28a 和 29a)。这应该让你开始!

【讨论】:

  • 非常感谢。我一定会看的。
  • 嘿,检查我更新的问题。现在为什么AB是主键?它总是第一个方程中的 X 吗?我的意思是在第一个 X->Y 可以有多个键吗? @PuRaK
  • AB 是关键,因为AB* = ABCDEFGHI(即关系的所有属性)。 它并不总是第一个等式中的 X。 可以有多个键。
  • 嘿,对不起,我不明白为什么 AB 是关键。你可以进一步解释一下,或者用一个简短的例子吗? @PuRak
  • AB 是一个键,因为 AB-closure (AB*) 给出了关系的所有属性。我建议你看 20a 以了解 X 闭包
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-21
  • 1970-01-01
  • 2016-03-21
  • 2020-04-06
  • 2013-09-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多