---
# System prepended metadata

title: 做正規化的方式
tags: [MySQL/MariaDB資料庫]

---

---
title: 做正規化的方式
tags: MySQL/MariaDB資料庫
---

第一正規化
---
* 每個欄位都只有一個值
* 每個欄位內的資料不重複
* 這張資料表有一個唯一的值

第二正規化
---
拆表-欄位跟欄位之間都是唯一的關係
* 例如:學生的資料表來舉例
    表單內有 學號 座號 姓名 生日 身分證號 住址 家長 電話 科別 畢業學校
    * 可以正規化成「學號」去對應「學生資料」再去對應「家長」
         變成三張資料表
          「學生資料表」內有座號 姓名 生日 身分證 住址 科別 國中
          「家長資料表」有 姓名 電話

第三正規化
---
再拆表-找欄位跟欄位間的關係
* 例如:再把上面的學生資料拿來簡化
    表單內的畢業學校可以獨立出來變成縣市跟是否畢業
    縣市亦可單獨獨立出來放到住址跟學校的縣市裡面
