首页 > Linux操作系统 > Linux操作系统 > 資料庫的范式學習筆記
資料的范式分析
何謂范式:范式就是讓資料庫中重復的資料減少到最少,讓我們能夠快速地找到所要的資料,以提高關聯式資料庫的效能.
資料庫的范式共分為:第一范式(1st Normarl Form,1NF),第二范式,第三范式,BCNF(Boyce-Codd Normal Form),第四范式,第五范式等多個階段.
不過對于一個資料庫設計來說,通常只要執行到BCNF即可.其他的更高的范式只有在特殊的情況下才會用的到.
范式的過程是循序漸進的,資料表必須滿足第一范式的條件下,才能進行第二范式.也就是說第二范式必須建立在符合第一范式的資料表上,
依次類推,因此,第一范式是所有范式的基礎.
第一范式:
1.資料表中必須有PRIMARY KEY,而其他所有的欄位都相依與PRIMARY KEY.相依是指一個資料表中,欄位B的值必須搭配欄位A才有意義.
2,每個欄位中只儲存單一值,例如同一筆記錄的姓名欄位中不能放2個人的姓名
3.資料表中沒有意義相同的多個欄位.
反之,若資料表不符合以上規則,則成為非范式的資料表.
不符合1NF的缺點
1.欄位長度無法確定
2.降低存取資料的效率
第二范式:
1.符合第一范式
2.各欄位與PRIMARY KEY 沒有部分相依的關系.(部分相依只有在primary key由多個欄位組成時才會產生,它是由某些欄位只有主鍵中
部分欄位有相依性,而另一部分的欄位沒有相依性)
部分相依會造成以下問題:
1 .新增資料可能無法錄入
2.更改資料時沒有效率
3.刪除資料時可能會同時刪除仍有用的資料.
第三范式:
1.符合第二范式
2.個欄位與主鍵間沒有間接相依的關系
對于大多數資料庫來說,通常只需要執行到3NF就足夠了.但如果資料表的主鍵由多個欄位組成,既可以Boyece-Codd范式來繼續檢查
也成為廣義的3NF
1.符合2NF
2.各欄位與主鍵沒有間接相依的關系
3.主鍵中的各欄位不可以相依與其他非主鍵的欄位.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7899089/viewspace-611721/ ,如需转载,请注明出处,否则将追究法律责任。