天天看點

資料庫設計中的五大範式

第一範式:

對于表中的每一行,必須且僅僅有唯一的行值.在一行中的每一列僅有唯一的值并且具有原子性. 

(第一範式是通過把重複的組放到每個獨立的表中,把這些表通過一對多關聯聯系起來這種方式來消除重複組的。) 

第二範式:

第二範式要求非主鍵列是主鍵的子集,非主鍵列活動必須完全依賴整個主鍵。主鍵必須有唯一性的元素,一個主鍵可以由一個或更多的組成唯一值的列組成。一旦建立,主鍵無法改變,外鍵關聯一個表的主鍵。主外鍵關聯意味着一對多的關系.

(第二範式處理備援資料的删除問題。當某張表中的資訊依賴于該表中其它的不是主鍵部分的列的時候,通常會違反第二範式。) 

第三範式:

第三範式要求非主鍵列互不依賴.

(第三範式規則查找以消除沒有直接依賴于第一範式和第二範式形成的表的主鍵的屬性。我們為沒有與表的主鍵關聯的所有資訊建立了一張新表。每張新表儲存了來自源表的資訊和它們所依賴的主鍵。) 

第四範式:

第四範式禁止主鍵列和非主鍵列一對多關系不受限制

第五範式:

第五範式将表分割成盡可能小的塊,為了排除在表中所有的備援.