1

伙计们,您将如何创建此表的第二种形式(主键是:{isbn,copy}):
isbn AB-1234-X
authorID IC45
authorName I.Conn
title最终幕
副本2
分类Detectivefiction
userID xyz44

4

2 回答 2

1

将您的分类和作者放在单独的表中,如下所示:

书桌

伊斯本 AB-1234-X

作者ID IC45

标题最后的帷幕

复制2

分类ID 1

用户ID xyz44

作者表

作者ID

作者姓名

分类

分类ID

分类名称

于 2011-03-20T12:02:06.903 回答
1

一个关系在 2NF iff

  • 它在 1NF 中,并且
  • 每个非主要属性都依赖于每个候选键的整体(而不仅仅是任何候选键的一部分)

唯一的候选键是 {isbn, copy}。所以问题变成了三个问题。

  1. 这种关系在 1NF 中吗?
  2. 是否有任何非主属性 {authorID、authorName、title、classification、userID} 仅依赖于 {isbn}?
  3. 是否有任何非主属性 {authorID、authorName、title、classification、userID} 仅依赖于 {copy}?

你怎么


之后 。. .

然后,我将创建具有属性的单独表:isbn、autorID、autorName、title、分类和另一个具有属性的表:isbn、copy、userID。

是的。在“关系说话”中,您用这两个投影替换了原始关系 R。

  • R 1 = { isbn, 复制, 用户 ID}
  • R 2 = { isbn , authorid, authorname, 标题, 分类}

如果你做的正确,你应该能够通过在 {isbn} 上加入 R 1和 R 2来再次创建 R。

现在 R 1和 R 2都在 2NF 中。(我认为这是作业问题的重点。)您可能需要考虑 R 1和 R 2是否在

  • 3NF
  • BCNF
  • 4NF
  • 5NF

还是以后。. .

非正式地说,一个关系在 3NF iff

  • 它在 2NF 中,并且
  • 没有传递依赖。

当我说“它在 2NF 中”时,我的意思是所讨论的关系在 2NF 中,并且它还没有3NF、BCNF、4NF 或 5NF 中。

R 1和R 2的范式是什么?你会想解释你的推理,否则你的讲师可能会让你看起来很愚蠢。我们不希望这样。

  • R 1 = { isbn, 复制, 用户 ID}
  • R 2 = { isbn , authorid, authorname, 标题, 分类}

再晚一点。. .

R 1在 5NF 中。R 2在 2NF 中。

R 2不在 3NF 中,因为“isbn”和“authorname”之间存在传递依赖。

  • isbn->authorid,和
  • authorid->作者名

通过用这两个投影(R 3和 R 4)替换 R 2来消除这种传递依赖。

  • R 1 = { isbn, copy , userid} (5NF)
  • R 3 = { isbn , authorid, 标题, 分类}
  • R 4 = { authorid , authorname}

我认为标题和分类之间没有功能依赖关系。

于 2011-03-20T12:29:45.577 回答