我正在尝试理解数据库规范化。我看到了2个普通形式的例子,它不是3个普通形式
Tournament Year Winner Winner_Date_of_Birth
Indiana Invitational 1998 Al Fredrickson 21 July 1975
Cleveland Open 1999 Bob Albertson 28 September 1968
Des Moines Masters 1999 Al Fredrickson 21 July 1975
Indiana Invitational 1999 Chip Masterson 14 March 1977
这里的主键是Tournament,Year。因此,没有非主键属性在功能上依赖于主要子集,它在2NF中。
根据维基百科的说法,它不在3 NF中,因为
Touranment, Year -> Winner and
Winner -> Winner_Date_Of_Birth
因此,键之间存在功能依赖性的传递属性。我理解这一部分,但我想知道的是,因为我们的关键
(锦标赛,年份)只能有一个独特的winner_date_of_birth,是否正确(Touranment,Year) - > Winner_Date_Of_Birth没有使用上面的传递属性?
答案 0 :(得分:0)
是的,传递意味着您可以推导出A - >来自A的C - > B和B - >下进行。