第四范式 (4NF)
dbmsdatabasemysql
什么是 4NF?
4NF 是继 1NF、2NF、3NF 和 Boyce-Codd 范式之后出现的。它由 Ronald Fagin 于 1977 年提出。
要符合 4NF,关系应符合 Bouce-Codd 范式,并且不能包含多个多值属性。
示例
让我们看一个例子 −
<Movie>
Movie_Name | Shooting_Location | Listing |
MovieOne | UK | Comedy |
MovieOne | UK | Thriller |
MovieTwo | Australia | Action |
MovieTwo | Australia | Crime |
MovieThree | India | Drama |
以上内容不符合 4NF,因为
- 多部电影可以有相同的列表
- 多个拍摄地点可以有同一部电影
让我们将上表转换为 4NF −
<Movie_Shooting>
Movie_Name | Shooting_Location |
MovieOne | UK |
MovieOne | UK |
MovieTwo | Australia |
MovieTwo | Australia |
MovieThree | India |
<Movie_Listing>
Movie_Name | Listing |
MovieOne | Comedy |
MovieOne | Thriller |
MovieTwo | Action |
MovieTwo | Crime |
MovieThree | Drama |
现在违规行为已被消除并且表格符合 4NF。