第五范式(5NF)

5NF(第五范式)也称为项目联接范式。如果关系为4NF,则采用第五范式(5NF),并且不会无损地分解成较小的表。

如果候选键隐含了其中的每个联接依赖关系,您还可以认为该关系位于5NF中。

示例

以下关系违反了归一化的第五范式(5NF)-

<员工>

EmpName
EmpSkills
EmpJob (分配的工作)
大卫
爪哇
E145
约翰
的JavaScript
E146
杰米
jQuery的
E146
艾玛
爪哇
E147

上述关系可以分解为以下三个表;因此,它不在5NF中-

<EmployeeSkills>

EmpName
EmpSkills
大卫
爪哇
约翰
的JavaScript
杰米
jQuery的
艾玛
爪哇

以下是<EmployeeJob>关系,显示分配给每个雇员的工作-

<EmployeeJob>

EmpName
EmpJob
大卫
E145
约翰
E146
杰米
E146
艾玛
E147

这是与分配的工作相关的技能-

<工作技能>

EmpSkills
EmpJob
爪哇
E145
的JavaScript
E146
jQuery的
E146
爪哇
E147

我们的加入依赖关系-

{(EmpName,EmpSkills),(EmpName,EmpJob),(EmpSkills,EmpJob)}

上述关系具有联接依赖性,因此不在5NF中。这意味着上述三个关系的联接关系等于我们的原始关系<Employee>