【问题标题】:Is this example 5th normal form?这个例子是第五范式吗?
【发布时间】:2014-05-22 19:23:06
【问题描述】:

我正在研究所有正常形式之间的差异,直到我遇到以下情况,来自A Simple Guide to Five Normal Forms in Relational Database Theory

我们不会尝试对第五范式进行全面的阐述,而是用一个常用的例子来说明中心概念,即涉及代理、公司和产品的例子。如果代理商代表公司,公司生产产品,代理商销售产品,那么我们可能希望记录哪个代理商为哪个公司销售哪种产品。此信息可以保存在具有三个字段的一种记录类型中:

-----------------------------
| AGENT | COMPANY | PRODUCT |
|-------+---------+---------|
| Smith | Ford    | car     | 
| Smith | GM      | truck   | 
-----------------------------

这种形式在一般情况下是必需的。例如,虽然代理史密斯销售福特制造的汽车和通用制造的卡车,但他不销售福特卡车或通用汽车。因此我们需要三个字段的组合来知道哪些组合是有效的,哪些是无效的。

基本上,这个表在 4NF 中,因为它在 3NF 中(所有属性都依赖于候选键,在这种情况下都是 3)并且该表不暗示多值依赖。但是这个表现在是否也在 5NF 中,尽管它没有被分解(由于信息丢失,它不能被进一步分解)?

【问题讨论】:

    标签: database normalization database-normalization


    【解决方案1】:

    它在 5NF 中。

    你的短语“它没有被分解”和“它不能被进一步分解”并不是同一个意思。您应该仔细阅读 Kent Beck 文章中引用的段落和示例。

    【讨论】:

      猜你喜欢
      • 2019-08-03
      • 2013-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多