【问题标题】:Second normal form : Artificial key vs Composite Primary Key第二范式:人工键与复合主键
【发布时间】:2015-06-02 17:21:05
【问题描述】:

我最近读到了第二范式:“如果您的表有一个人工主键而没有复合主键,那么它就是第二范式”。 如果我的表在我的表中有一个人工键和一个复合主键怎么办? 那么它也会是第二范式吗?

【问题讨论】:

  • 这句话出自哪里?
  • @stark 参考:HeadFirst SQL

标签: mysql database-normalization


【解决方案1】:

每个候选键由单个列组成的关系在 2NF 中。 (关系模型总是考虑每个候选键。)

element_name atomic_number chem_symbol -- 氢 1 H 氦气 2 He 锂3锂 ...

这里的每个属性都是一个候选键。该表在 2NF 中。它也在 3NF、BCNF、4NF 和 5NF 中。

如果我的表在我的表中有一个人工键和一个复合主键怎么办?那么它也会是第二范式吗?

它依赖于非主属性和它们的依赖。如果您有一个在功能上依赖于该复合主键的一部分的非主属性,则该关系不在 2NF 中。

【讨论】:

  • 第一句错了。所有简单但 {} 确定非主要属性的 CK,即只允许 1 个值,不满足 2NF。 (我希望你知道。所以我很惊讶你不这么说。)
猜你喜欢
  • 2014-03-27
  • 2019-08-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-11
  • 2015-02-05
相关资源
最近更新 更多