📜  DBMS 5NF

📅  最后修改于: 2020-12-12 03:06:50             🧑  作者: Mango

第五范式(5NF)

  • 如果关系在4NF中并且不包含任何联接依赖关系,则在5NF中,并且联接应该是无损的。
  • 当将所有表分解成尽可能多的表以避免冗余时,满足5NF。
  • 5NF也称为Project-join正常形式(PJ / NF)。

SUBJECT LECTURER SEMESTER
Computer Anshika Semester 1
Computer John Semester 1
Math John Semester 1
Math Akash Semester 2
Chemistry Praveen Semester 1

在上表中,John在第一学期同时上了计算机课和数学课,但在第二学期没有上数学课。在这种情况下,必须将所有这些字段组合起来才能识别有效数据。

假设我们添加一个新的学期作为第3学期,但不知道该科目以及谁将选修该科目,因此我们将讲师和科目保留为NULL。但是,所有三列一起用作主键,因此我们不能将其他两列留空。

因此,要使上表为5NF,我们可以将其分解为三个关系P1,P2和P3:

P1

SEMESTER SUBJECT
Semester 1 Computer
Semester 1 Math
Semester 1 Chemistry
Semester 2 Math

P2

SUBJECT LECTURER
Computer Anshika
Computer John
Math John
Math Akash
Chemistry Praveen

P3

SEMSTER LECTURER
Semester 1 Anshika
Semester 1 John
Semester 1 John
Semester 2 Akash
Semester 1 Praveen