ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 資料庫的范式學習筆記

資料庫的范式學習筆記

原创 Linux操作系统 作者:keeking 时间:2009-08-10 10:46:54 0 删除 编辑

資料的范式分析

何謂范式:范式就是讓資料庫中重復的資料減少到最少,讓我們能夠快速地找到所要的資料,以提高關聯式資料庫的效能.

資料庫的范式共分為:第一范式(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博客 ” ,链接:http://blog.itpub.net/7899089/viewspace-611721/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 找出最大值
请登录后发表评论 登录
全部评论

注册时间:2009-07-23

  • 博文量
    194
  • 访问量
    241454