第一正規化(1nf):字段(列)都是單一屬性,不可再分。
第二正規化(2nf):在1nf基礎上,要求在資料庫表中不存在非關鍵字段對任一候選關鍵字段的部分函式依賴。就是消除部分依賴性,意思是在2nf中組合主鍵(ab)中的a,b不能和其他字段存在組合重複,解決方法就是:1、復合鍵拆分為兩個表。2、不用組合主鍵,新增乙個編號列作為單一主鍵。
if不按照2nf會出現問題:1、資料冗餘:例如乙個東西被n個人買,那麼這個東西就重複了n-1次。
2、更新異常:若調整了某一產品型別,其他全部的產品都要調整才行
3、插入異常:假設新近一產品,還沒人買,這樣產品名稱型別無法記錄到資料庫中
4、刪除異常:假設顧客把已購買產品退貨,這些產品資訊就從資料表中刪除了。但同時產品其他資訊也被刪除了。
第三正規化(3nf):要求資料表中不存在非關鍵字段對任一候選關鍵字段的傳遞函式依賴。
?傳遞函式依賴:如果a決定b,b決定c,則c傳遞函式依賴於a。
鮑依斯-科德 正規化(bcnf):建立在3nf基礎上,如果資料表中不存在任何欄位對任一候選關鍵字段的傳遞函式依賴。
關係型資料庫設計正規化
理解三大正規化 學後知變通 什麼是正規化 資料庫設計對資料的儲存效能和開發人員對資料的操作都有關係。所以建立科學的 規範的資料庫需要滿足一些規範。在關係型資料庫中這些規範就可以稱為正規化。三大正規化概念 第一正規化 當關係模式r的所有屬性都不能分解為更基本的資料單位時,稱r是滿足第一正規化的,簡記為...
關係型資料庫設計正規化
首先要明白 正規化 nf 是什麼意思。按照教材中的定義,正規化是 符合某一種級別的關係模式的集合,表示乙個關係內部各屬性之間的聯絡的合理化程度 很晦澀吧?實際上你可以把它粗略地理解為一張資料表的表結構所符合的某種設計標準的級別。就像家裡裝修買建材,最環保的是e0級,其次是e1級,還有e2級等等。資料...
關係型資料庫設計正規化
為了建立冗餘較小 結構合理的關聯式資料庫,設計關聯式資料庫時必須遵循一定的規則,即關聯式資料庫的設計正規化。關係型資料庫的第一正規化要求 舉例來說,客戶資料表中包含客戶名和位址,位址由城市和街道組成。應用經常需要分別訪問城市或街道字段。資料表customers name,city,street 是符...