MySQL 數據庫設計
阿新 • • 發佈:2018-04-01
信息 如果 mysql 數據庫 主鍵 nbsp 客戶 個數 其他 最小數
一、數據庫設計:將數據庫中的數據實體以及這些實體之間的關系,進行規劃和結構化的過程。
設計過程:
- 需求分析:分析客戶的業務和數據處理需求。
- 概要設計:繪制數據庫的ER圖,確認需求信息的正確性和完整性。
- 詳細設計:將ER圖轉換為多張表,進行邏輯設計,取人哥表的主鍵外鍵,並應用數據庫設計的三大範式進行審核。最後選擇具體的數據庫。
二、數據庫設計的三大範式:
(1)第一範式
目標:確保每列的原子性。
如果每列都是不可再分的最小數據單元(最小原子單元),則滿足第一範式。
(2)第二範式
目標:確保表中每列都和主鍵相關。
如果一個數據庫滿足第一範式,並且主鍵以外的其它列全部依賴於該主鍵,則滿足第二範式。
如果一個主鍵有多個列,那麽其他列必須都對這兩個主鍵列都有依賴。否則可以分開為兩個表~
(3)第三範式
目標:確保每列都和主鍵列相關,而不是間接相關。
如果一個關系滿足第二範式,並且除了主鍵以外的其他列都只能依賴於主鍵,列和列之間不存在相互依賴關系,則滿足第三範式。
第三範式也是對字段冗余性的約束,即任何字段不能由其他字段派生出來,所以要求字段沒有冗余。
主鍵與外鍵在多表中的重復出現不屬於數據冗余,非鍵字段的重復出現才是數據冗余。
MySQL 數據庫設計