【发布时间】:2026-02-25 10:25:01
【问题描述】:
我的问题很简单。从我所见,似乎从 1NF、2NF、3NF 到 Boyce-Codd 形式的规范化似乎主要处理非主要属性的问题。如果我没记错的话,下表是 Boyce-Codd 形式:
R(A,B,C), F = {AB->C, A->B}
A,B 是复合主键,我觉得这很奇怪。
我错过了什么吗?
【问题讨论】:
-
您的表甚至不在
3NF中,因为C传递地依赖于A到B -
您的“我有这些 FD”没有意义。 “这些都是持有的FD”?--不可能。 “这些都是持有的不平凡的FD”?--不可能。 “这些是一些持有的FD”?--问题无法回答。找出什么是 cover 以及应用特定定义/规则/算法的确切条件。要确定 CK 和 NF,我们必须得到构成掩护的 FD。有时是最小/不可约覆盖。并且必须给出所有属性的集合。 See this answer.
-
现在您只是要求我们使用定制教程重写您的教科书。请参阅How to Ask,点击谷歌搜索“stackexchange 作业”和投票箭头鼠标悬停文本。按照教科书的理由展示您的工作步骤,并在您遇到困难的第一个地方提出 1 个经过研究的特定非重复问题。引用您所依赖的定义、定理和算法。所有步骤也是常见问题解答。 PS“对我来说很奇怪”什么都没有传达。 PS PK 无关紧要,CK 很重要。复合 CK 是相关的,因为它们有一个特定的 BCNF 定理。
标签: database database-normalization