如果它是Boyce Codd範式,並且沒有多值依賴關係,那麼關係將是4NF。
對於依賴性A→B,如果對於單個A值,存在多個B值,則該關係將是多值依賴性。
示例
STUDENT 表結構和數據如下 -
| STU_ID | COURSE | HOBBY | 
|---|---|---|
| 21 | Computer | Dancing | 
| 21 | Math | Singing | 
| 34 | Chemistry | Dancing | 
| 74 | Biology | Cricket | 
| 59 | Physics | Hockey | 
上面給定的STUDENT表是符合3NF,但COURSE和HOBBY是兩個獨立的實體。因此,COURSE和HOBBY之間沒有關係。
在學生關係中,一個學生的STU_ID是21,它有兩門課程,電腦和數學以及兩個愛好,舞蹈和歌唱。 因此,對STU_ID存在多值依賴性,這導致不必要的數據重複。
因此,要將上表轉換為4NF ,我們可以將其分解為兩個表:
STUDENT_COURSE 表的結構和數據 -
| STU_ID | COURSE | 
|---|---|
| 21 | Computer | 
| 21 | Math | 
| 34 | Chemistry | 
| 74 | Biology | 
| 59 | Physics | 
STUDENT_HOBBY 表的結構和數據 -
| STU_ID | HOBBY | 
|---|---|
| 21 | Dancing | 
| 21 | Singing | 
| 34 | Dancing | 
| 74 | Cricket | 
| 59 | Hockey | 
						上一篇:
								DBMS第三範式(3NF)
												下一篇:
								DBMS第五範式(5NF)
					
					