資料庫三大正規化(詳細舉例說明一看就會)

2022-07-06 13:27:07 字數 1057 閱讀 1434

* 資訊重複

* 更新異常

* 插入異常(無法正常顯示資訊)

* 刪除異常 (丟失有效的資訊)

舉例說明:

在上面表中 家庭資訊和學歷資訊不滿足原子性要求,不滿足第一正規化,進行調整如下

舉例說明:

在上述表中,同乙個訂單號可以包括不同產品號,因此主鍵必須是「訂單號」、「產品號」聯合組成。

但可以發現 產品號、產品數量、產品**與「訂單號」、「產品號」都相關,但是訂單金額 訂單時間、訂單人僅與訂單號相關,與「產品號」無關

因此不滿足第二正規化要求進行調整如下分成兩張表:

舉例說明:

上表所有屬性完全依賴於學號,滿足第二正規化,但是「班主任性別」、「班主任年齡」直接依賴於「班主任姓名」,並非主鍵「學號」

進行調整如下:

調整之後滿足第三正規化

資料庫三大正規化總結:(規範資料庫設計)

規範性 和效能問題

關聯表不得超過三張表

1、考慮商業化需求和目標,(成本、使用者體驗)資料庫與效能更加重要

2、在規範效能得問題的時候,需要適當考慮 規範性

3、故意給某些表增加一些冗餘長欄位。(從多表查變為單錶差查)

4、故意增加一些計算列(從大資料降低為小資料,索引:)

資料庫設計三正規化的舉例說明

前言 資料庫課本上都把正規化寫到五正規化了,但是實際應用中,滿足三正規化已經足夠了,五正規化太多餘了。三種正規化是條件遞增的聯絡 即後乙個正規化是在前乙個條件滿足的情況下引入新的條件 例如 正規化滿足條件 一正規化 1nf 條件a二正規化 2nf 條件a,條件b 三正規化 3nf 條件a,條件b,條...

資料庫連線 舉例說明

表1 tb1結構及值 num name 1 name1 2 name2 2 name3 4 name4 表2 tb2結構及值 num name 1 name1 2 name2 3 name3 執行左連線 select from tb1 left join tb2 on tb1.num tb2.num...

Mysql 資料庫 三大正規化 詳細介紹

第一正規化 1nf 第二正規化 2nf 第三正規化 3nf 進過研究和對使用問題的總結,對設計資料庫提出一些規範,這些規範被稱為正規化 第一正規化1nf 強調列的原子性,即資料表內的屬性是不可再劃分的。第二正規化2nf 在第一正規化基礎下,資料表必須含有乙個主鍵,其他資料列必須完全依賴於主鍵 第三正...