1. 程式人生 > >MySQL 數據庫設計

MySQL 數據庫設計

信息 如果 mysql 數據庫 主鍵 nbsp 客戶 個數 其他 最小數

  一、數據庫設計:將數據庫中的數據實體以及這些實體之間的關系,進行規劃和結構化的過程。

  設計過程:

  • 需求分析:分析客戶的業務和數據處理需求。
  • 概要設計:繪制數據庫的ER圖,確認需求信息的正確性和完整性。
  • 詳細設計:將ER圖轉換為多張表,進行邏輯設計,取人哥表的主鍵外鍵,並應用數據庫設計的三大範式進行審核。最後選擇具體的數據庫。  

  二、數據庫設計的三大範式:

  (1)第一範式

  目標:確保每列的原子性。

  如果每列都是不可再分的最小數據單元(最小原子單元),則滿足第一範式。

  (2)第二範式

  目標:確保表中每列都和主鍵相關。

  如果一個數據庫滿足第一範式,並且主鍵以外的其它列全部依賴於該主鍵,則滿足第二範式。

  如果一個主鍵有多個列,那麽其他列必須都對這兩個主鍵列都有依賴。否則可以分開為兩個表~

  (3)第三範式

  目標:確保每列都和主鍵列相關,而不是間接相關。

  如果一個關系滿足第二範式,並且除了主鍵以外的其他列都只能依賴於主鍵,列和列之間不存在相互依賴關系,則滿足第三範式。

  第三範式也是對字段冗余性的約束,即任何字段不能由其他字段派生出來,所以要求字段沒有冗余。

  主鍵與外鍵在多表中的重復出現不屬於數據冗余,非鍵字段的重復出現才是數據冗余。

MySQL 數據庫設計