iT邦幫忙

2023 iThome 鐵人賽

DAY 30
0
自我挑戰組

C# 和 SQL 探索之路 - 2系列 第 30

Day 30: 資料表的正規化與設計的摘要 & 後記

  • 分享至 

  • xImage
  •  

第一正規化的關鍵:資料表內沒有重複的紀錄,可以透過設定主鍵 (Primary Key, PK) 達成。

第二正規化的關鍵:將容易重複資料、只和表格部分相關的欄位,拆分成不同表格,建立外來鍵 (Foreign Key),和其它表格產生關連。

第三正規化的關鍵:如果可以從其它欄位計算或推斷出來,就不要設立一個欄位去紀錄。

資料庫正規化以後,如果要修改資料,很容易遇到其它欄位沒有一起更新的問題。
設計時就要問自己,哪些資料要留下歷史紀錄,才不會遇到更新資料後,其它欄位產生落差的問題;或是另外寫 SQL 語法定期 / 觸發一同更新其它欄位的資料。
這可能連第三正規化也沒辦法解決。

資料庫設計之共用/不共用欄位 - 《Chris 技術筆記》


後記:

經過了一年,又成長了一些。
也希望這一系列的文章,對讀者有幫助。
謝謝大家。


上一篇
Day 29: SQL 關於非叢集索引與索引模式
系列文
C# 和 SQL 探索之路 - 230
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言