資料庫設計之三大正規化

2021-08-04 18:31:00 字數 1264 閱讀 5941

背景

表設計後,很可能結構不合理,出現資料重複儲存,簡稱資料的冗餘,這對資料的增刪改查帶來很多後患,所以我們需要審核是否合理,如何審核呢?需要一些有關資料庫設計的理論指導規則,這些規則業界簡稱資料庫的正規化。

兩個重要概念

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屬性實際上的可分的 這種情況不滿足第一正規化。不滿足第一正規化的...