背景
表設計後,很可能結構不合理,出現資料重複儲存,簡稱資料的冗餘,這對資料的增刪改查帶來很多後患,所以我們需要審核是否合理,如何審核呢?需要一些有關資料庫設計的理論指導規則,這些規則業界簡稱資料庫的正規化。
兩個重要概念
1、部分函式依賴
1> 存在資料冗餘
2>新增資料會有異常
3>更新資料會有異常
4>刪除會有異常
2、傳遞函式依賴
1> 存在資料冗餘
2>新增資料會有異常
3>更新資料會有異常
4>刪除會有異常
三大正規化
1、第一正規化
1-1、第一正規化的目標是確保每列的原子性
1-2、如果每列都是不可再分的最小資料單元(也稱為最小的原子單元),則滿足第一正規化
2、第二正規化
2-1、如果乙個關係滿足1nf,並且除了主鍵以外的其他列,都依賴與該主鍵,則滿足第二正規化
2-2、第二正規化要求每個表只描述一件事情
3、第三正規化
3-1、如果乙個關係滿足第二正規化,並且除了主鍵以外的其他列都不傳遞依賴於主鍵列,則滿足第三正規化
總結:良好的資料庫設計
1、節省資料的儲存空間
2、能夠保證資料的完整性
3、方便進行資料庫應用系統的開發
糟糕的資料庫設計
1、資料冗餘、儲存空間浪費
2、記憶體空間浪費
3、資料更新和插入的異常
資料庫設計之三大正規化
為了建立冗餘較小 結構合理的資料庫,設計資料庫時必須遵循一定的規則。在關係型資料庫中這種規則就稱為正規化。正規化是符合某一種設計要求的總結。要想設計乙個結構合理的關係型資料庫,必須滿足一定的正規化。在實際開發中最為常見的設計正規化有三個 1 第一正規化 確保每列保持原子性 第一正規化是最基本的正規化...
資料庫設計原則之三大正規化
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!資料庫設計的時候有三大正規化,現簡述如下 原則就是使得表列為原子性,每乙個字段內容不能再分解。第二正規化要求滿足如下兩個要求,這一點,只要是有主鍵就可以實現。因為主鍵的存在使得每一行資料都具有唯一性。依賴的定義 主鍵確定了其他字段,其他字段依賴於主...
資料庫之三大正規化
在前面我們已經介紹了 屬性值的概念,我們說,它是 不可分的 而第一正規化要求屬性也不可分。那麼它和屬性值不可分有什麼區別呢?給乙個例子 name address age小明 山東省濟寧市 13小紅 遼寧省大連市 12表中的address屬性實際上的可分的 這種情況不滿足第一正規化。不滿足第一正規化的...