正如标题所述。我已经阅读了很多文章试图围绕这个问题,但我仍然不确定我是否做得对。我想我已经掌握了它,但想要得到更多的意见,以防我需要纠正我正在做的事情。示例如下。谢谢!
1NF Employee_ID,姓氏,名字,街道,城市,邮编,D.O.B。,年龄,需要学位
2NF Employee_ID,姓氏,名字,D.O.B,年龄,学位收到位置_ID,街道,城市,邮编
3NF Employee_ID,姓氏,名字,年龄出生日期,D.O.B。 Location_ID Street邮政编码,城市
总结:2NF是每个非键属性取决于整个主键的时间。所以想象一张CD。 CD有一个ID号,这是主键。艺术家的姓名,艺术家和性别取决于主键。所以这是正确的:
Table_CD:
CD_ID: Name: Artist: Artist_Gender:
1 CD1 Artist1 Male
2 CD2 Artist1 Male
3 CD3 Artist2 Female
这对于2NF是正确的,因为艺术家依赖于键(CD_ID)。我们不检查传递依赖性。
在3NF中,您只是说不能依赖于不是关键的东西。艺术家的性别取决于艺术家。不在CD_ID上,这是关键。因此它不是3NF。
要使其成为3NF,您必须将传递依赖性分开。因此,艺术家的性别。从而:
Table_CD:
CD_ID: Name: Artist:
1 CD1 Artist1
2 CD2 Artist1
3 CD3 Artist2
Table_Artist:
Name: Gender:
Artist1 Male
Artist2 Female