# 正規化 原始表格 ![](https://i.imgur.com/MsUJiVn.png) ## 第一正歸化 1NF ![](https://i.imgur.com/vKH9ejW.png) 1. 一個格子只能塞一個值 2. 每個column底下的值要是相同type 3. 每個row要是unique的 (不能有重複的row) 1NF 正規化: ![](https://i.imgur.com/jLo24Rg.png) ## 第二正歸化 2NF ![](https://i.imgur.com/VSrKegk.png) 第二正規化要求所有的attribute要dependent on key。 如上面圖,Cust ID能是Price的代表嗎? 不行! 理論上Price是跟遊戲主機(Item)息息相關的,所以把他給拉出來。 接著要讓兩個拉出來的表關聯起來 ![](https://i.imgur.com/Ujf7RyM.png) ## 第三正規化 3NF 第三正規化要求所有的attribute要**only** depend on Key。也就是我的attribute只能由Key值決定,不能由其他值絕定 (也就是attribute之間不能有1對1關係 如下) ![](https://i.imgur.com/OvC5ltN.png) Supplier 與 Supplier Number 1對1了,我們要把她分開。 ![](https://i.imgur.com/2HgdPpB.png)