先决条件 – 第四和第五范式
1. 第四范式(4NF):
当满足以下条件时,任何关系都称为第四范式:
- 它必须是 Boyce Codd 范式 (BCNF)。
- 它应该没有多值依赖。
当表中有两个属性依赖于第三个属性但彼此独立时,称为多值依赖。
对于函数依赖 X->Y,如果 X 的单个值存在多个 Y 值,则将存在多值依赖。
因此,如果一个关系在 BCNF 中并且它没有任何类型的多值依赖,那么该关系将在 4NF 中。
为了表示多值依赖,使用“->->”这个符号。
例子 –
考虑以下关系:
Student-ID | Course | Hobby |
---|---|---|
100 | Science | Dancing |
100 | Maths | Singing |
101 | C# | Dancing |
101 | PHP | Singing |
在这种关系中,学生 ID 1 因此选择了两门课程并有两个爱好。类似地,学生 ID 2 选择了两门课程并有两个爱好。因此它包含多值依赖关系。它不在 4NF 中,为了将其转换为 4NF,可以将其分解为两个关系:
Student-ID | Course |
---|---|
100 | Science |
100 | Maths |
101 | C# |
101 | PHP |
Student-ID | Hobby |
---|---|
100 | Dancing |
100 | Singing |
101 | Dancing |
101 | Singing |
现在这种关系因此在 4NF 中。一个关系也可以包含一个函数依赖和一个多值依赖。所以当这种情况出现时,函数依赖的列被移动到一个单独的表,而多值依赖的列被移动到一个单独的表。这将关系转换为 4NF。
2.第五范式(5NF):
任何关系要处于第五范式必须满足以下条件:
- 它必须是第四范式 (4NF)。
- 它应该没有连接依赖,并且连接必须是无损的。
在第五范式中,必须将关系分解为尽可能多的子关系以避免任何类型的冗余,并且在使用自然连接将子关系组合在一起时不能产生额外的元组。
5NF 中的关系不能在含义或事实上不做任何修改的情况下进一步分解。 5NF 也称为项目加入范式 (PJNF) 。
例子 –
Student-ID | Mobile Number | Hobby |
---|---|---|
123 | 9999900000 | Dancing |
124 | 9999900000 | Singing |
124 | 9999900000 | Dancing |
123 | 8975622122 | Singing |
123 | 9999900000 | Singing |
这可以进一步分解为三个关系:
Student-ID | Mobile Number |
---|---|
123 | 9999900000 |
123 | 8975622122 |
124 | 9999900000 |
Student-ID | Hobby |
---|---|
123 | Dancing |
123 | Singing |
124 | Singing |
124 | Dancing |
Mobile Number | Hobby |
---|---|
9999900000 | Dancing |
9999900000 | Singing |
8975622122 | Singing |
因此,如果对所有三个关系执行自然连接,则不会有额外的元组。因此 R1、R2 和 R3 处于第五范式(5NF)。
4NF 和 5NF 的区别:
S.NO | 4NF | 5NF |
---|---|---|
1. | A relation in 4NF must also be in BCNF(Boyce Codd Normal Form). | A relation in 5NF must also be in 4NF(Fourth Normal Form). |
2. | A relation in 4NF must not have any multi-valued dependency. | A relation in 5NF must not have any join dependency. |
3. | A relation in 4NF may or may not be in 5NF. | A relation in 5NF is always in 4NF |
4. | Fourth Normal Form is less stronger in comparison to Fifth Normal form. | Fifth Normal form is more stronger than Fourth Normal Form. |
5. | If a relation is in Fourth Normal Form then it will have more redundancy. | If a relation is in Fifth Normal Form then it will less redundancy. |
6. | If a relation is in Fourth Normal Form then it may be decomposed further into sub-relations. | If a relation is in Fifth Normal Form then it cannot be decomposed further into sub-relations without any modification in meaning or facts. |