📜  DBMS 4NF

📅  最后修改于: 2020-12-12 03:05:57             🧑  作者: Mango

第四范式(4NF)

  • 如果关系为Boyce Codd范式且没有多值依赖关系,则关系将为4NF。
  • 对于依赖项A→B,如果对于单个A值,存在多个B值,则该关系将是多值依赖项。

学生

STU_ID COURSE HOBBY
21 Computer Dancing
21 Math Singing
34 Chemistry Dancing
74 Biology Cricket
59 Physics Hockey

给定的STUDENT表位于3NF中,但是COURSE和HOBBY是两个独立的实体。因此,COURSE和HOBBY之间没有关系。

在学生关系中,具有STU_ID( 21)的学生包含两门课程,即计算机数学,以及两项爱好(跳舞唱歌) 。因此,对STU_ID存在多值依赖性,这导致不必要的数据重复。

因此,要将上表转换为4NF,我们可以将其分解为两个表:

STUDENT_COURSE

STU_ID COURSE
21 Computer
21 Math
34 Chemistry
74 Biology
59 Physics

STUDENT_HOBBY

STU_ID HOBBY
21 Dancing
21 Singing
34 Dancing
74 Cricket
59 Hockey