给定表格的正常形式是什么?

时间:2015-02-05 07:13:09

标签: database database-normalization

考虑库数据库的以下关系模式:

Book (Title,Author,Catalog_no, Publisher, Year, Price)

具有以下功能依赖性:

I. Title, Author -> Catalog_no
II. Catalog_no -> Title, Author, Publisher, Year
III. Publisher, Title, Year -> Price

假设{Author, Title}是架构的关键。在给定模式的正常形式下?

我认为该表仅在1NF而不是2NF。根据{{​​1}},属性III FD部分取决于密钥,因为它依赖于Price而非Title

请告诉我你的意见。

1 个答案:

答案 0 :(得分:1)

目录编号是关键;它直接决定除价格以外的所有东西,并且通过FD 3传递它也决定了价格。因此,Title + Author也是确定目录号的关键。

从表面上看,如果两位不同的作者在同一年都写了一本名为“如何写书”的书,该书由同一出版商(“Duplicative Publishing”)出版,那么这些书的费用必须相同,即使一个是50页加强小册子,另一个是500页大部头。这是现实世界中荒谬的FD。然而,问题不在于现实世界。

鉴于Second Normal Form的定义,没有逃避价格不是由整个密钥确定的事实,因此该关系不是2NF。