先决条件–第四和第五范式
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也称为Project Join Normal Form(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. |