第五范式 (5NF)
dbmsdatabasemysql
5NF(第五范式)也称为项目连接范式。如果关系符合 4NF,则该关系符合第五范式 (5NF),并且不会无损分解为较小的表。
如果候选键暗示了其中的每个连接依赖关系,您也可以认为该关系符合 5NF。
示例
以下关系违反了规范化的第五范式 (5NF) −
<Employee>
EmpName | EmpSkills | EmpJob (Assigned Work) |
David | Java | E145 |
John | JavaScript | E146 |
Jamie | jQuery | E146 |
Emma | Java | E147 |
The above relation can be decomposed into the following three tables; therefore, it is not in 5NF −
<EmployeeSkills>
EmpName | EmpSkills |
David | Java |
John | JavaScript |
Jamie | jQuery |
Emma | Java |
以下是 <EmployeeJob> 关系,显示分配给每个员工的工作 −
<EmployeeJob>
EmpName | EmpJob |
David | E145 |
John | E146 |
Jamie | E146 |
Emma | E147 |
Here is the skills that are related to the assigned jobs −
<JobSkills>
EmpSkills | EmpJob |
Java | E145 |
JavaScript | E146 |
jQuery | E146 |
Java | E147 |
Our Join Dependency −
{(EmpName, EmpSkills ), (EmpName, EmpJob), (EmpSkills, EmpJob)} |
上述关系具有连接依赖性,因此它们不属于 5NF。这意味着上述三个关系的连接关系等于我们原来的关系 <Employee>。