1NF 到 3NF -- 回顾
1NF to 3NF -- Review
所以我开始在我的课本中解决这个问题:http://imgur.com/Ax8hXj6
然后我必须找到所有依赖项并从原始文件创建一个 3NF...我花了几个小时试图弄清楚并使其正确。有人可以就我目前的最终产品提供反馈吗?
http://imgur.com/PE2hY56(我知道这是在关系模型而不是 ERD 中——我认为这会更容易)
我同意你的大部分解决方案。但是,有一些细节很突出:
- 您在
Training
中引入了 TRAINING_ID
或 TRAINING_DESCR
。最初的 EMP_TRAINING
具有单一值域。规范化只会给你桥梁 table.
- 您在
Education
中引入了 EDUC_CODE
或 EDUC_DESCR
。原来的 EMP_EDUCATION
有一个值域。规范化只会给你桥梁 table.
- 您将
EMP_CODE
作为 JOB_CLASS
的属性引入。我在原始文件中没有看到匹配的属性。
DEPEN_NUM
没有错,但这取决于您将 EMP_DEPENDENTS
解释为有序列表还是无序列表。我会使用 (EMP_NUM, DEPEN_FNAME)
作为 Dependents
的键。您的解决方案同样有效。
希望对您有所帮助。
所以我开始在我的课本中解决这个问题:http://imgur.com/Ax8hXj6 然后我必须找到所有依赖项并从原始文件创建一个 3NF...我花了几个小时试图弄清楚并使其正确。有人可以就我目前的最终产品提供反馈吗? http://imgur.com/PE2hY56(我知道这是在关系模型而不是 ERD 中——我认为这会更容易)
我同意你的大部分解决方案。但是,有一些细节很突出:
- 您在
Training
中引入了TRAINING_ID
或TRAINING_DESCR
。最初的EMP_TRAINING
具有单一值域。规范化只会给你桥梁 table. - 您在
Education
中引入了EDUC_CODE
或EDUC_DESCR
。原来的EMP_EDUCATION
有一个值域。规范化只会给你桥梁 table. - 您将
EMP_CODE
作为JOB_CLASS
的属性引入。我在原始文件中没有看到匹配的属性。 DEPEN_NUM
没有错,但这取决于您将EMP_DEPENDENTS
解释为有序列表还是无序列表。我会使用(EMP_NUM, DEPEN_FNAME)
作为Dependents
的键。您的解决方案同样有效。
希望对您有所帮助。