資料庫的三大設計正規化:(首先正規化設計的越詳細,對於某些實際操作可能更好,但是不一定都是好處)
第一正規化1nf: 資料表中的所有欄位都是不可分割的原子值。
從上圖看出,address欄位實際是可以劃分的,不滿足第一正規化的要求。所以可以對address欄位再細分成
countruy+privence+city+details的字段
第二正規化2nf: 必須是滿足第一正規化的前提下,第二正規化要求,除主鍵外的每一列都必須完全依賴於主鍵。如果要出現不完全依賴,之可能發生在聯合主鍵的情況下。
上圖中主鍵外其他列只部分依賴於主鍵。若要滿足第二正規化,只能進行拆表。
第三正規化3nf: 必須先滿足第二正規化,除開主鍵列的其他列之間不能有傳遞依賴關係。
上圖中customer_phone 和customer_id之間是有傳遞依賴關係的。
修改成如下就可以滿足第三正規化:
資料庫正規化 三正規化設計
資料庫第一正規化 原子性 表中每一列都不可以再分割成更小的列 資料庫第二正規化 不產生區域性依賴 每張表只描述一件事情 資料庫第三正規化 表中每列都直接依賴於主鍵,而不是通過其它列間接依賴於主鍵 什麼是資料庫正規化 學習第一正規化的應用 什麼是正規化 一種規則,指導程式設計師建立表的規則 程式設計師...
資料庫設計三大正規化資料庫設計三大正規化
為了建立冗餘較小 結構合理的資料庫,設計資料庫時必須遵循一定的規則。在關係型資料庫中這種規則就稱為正規化。正規化是符合某一種設計要求的總結。要想設計乙個結構合理的關係型資料庫,必須滿足一定的正規化。在實際開發中最為常見的設計正規化有三個 1 第一正規化 確保每列保持原子性 第一正規化是最基本的正規化...
資料庫設計 三正規化
建立冗餘小,結構合理的資料庫,設計資料庫時必須准許你一定的規則,在關聯式資料庫中的這種規則就成為正規化.是要符合某一種設計要求的總結 要想設計乙個合理的關係資料型資料庫庫,就必須滿足一定的正規化 也是最基本的正規化.如果資料庫表中的所有字段值是都不可分解的原子值.例如 使用者資訊表中.但是這個並不是...