資料庫正規化簡介(前四階段)

第一正規化(1NF) – 1. 排除重複群,即每欄位只放單一值 2. 每筆記錄都要有主鍵, 3. 同類事物只能用一個欄位

第二正規化(2NF) – 1. 1NF, 2. 每個欄都要跟整個主鍵有相依關係,而不是主鍵的部份有關,如果不是用複合主鍵,就一定是2NF

第三正規化(3NF) – 1. 2NF, 2. 非主鍵,屬性之間需互相完全無關

Boyce-Codd正規化(BCNF) – 1. 3NF, 2. 非候選鍵或候選鍵superset的欄位,限制了其他欄位的值,即存在欄位X->欄位Y的關係,就違反BCNF.如果表單裡沒有互相重疊的候選鍵,就必定BCNF

補充: 候選鍵即可唯一找出一筆資料的欄位組合,有可以作為鍵值潛力

還有四階NF, 4NF, 5NF, DKNF, 6NF, 通常用來處理特殊情況, 例如key不統一, 通常沒必要用到

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s