1.項目設計需求以及思想
1.需求文檔【功能列表】(需求白皮書)+原型。(業務需求理解能力)
2. 后台開發,設計數據庫(創建數據庫結構)(系統設計能力)
3. 后台開發,公共代碼編寫(系統設計能力)
4. 功能編碼 (編碼能力)
2.數據庫概述
1.什么是數據庫設計
數據庫設計就是根據我們的需求文檔將其設計成數據庫的存儲結構的一個過程
2.數據庫設計的實現
一般我們都是根據其需求畫出數據的ER圖也就是數據關系圖,然后再通過ER圖生成數據庫的腳本代碼
ER圖可以使我們更加直觀的展示表與表之間的關系
3.數據庫設計的步驟
數據庫設計的步驟是根據需求的描述:
第一步:標識表
第二步:標識表的字段
第三步:標識表與表之間的關系
1.標識表,就是根據需求將表創建,分為實體表和業務表兩種
實體表 :一般就是如商品,用戶之類的表,在項目中會有一個字段一一對應的實體類
業務表 :一般就是作為中間表的作用
2.標識字段,基本就是要符合數據庫設計的三大范式
1.第一范式:確保標識的字段的原子性,字段的概念分得不能再分。如:姓名可以分為姓和名。
2.第二范式:確保標識的字段與表有依賴的關系,在用戶表定義一個商品價格
3.第三方范式:確保標識的字段與表有直接依賴的關系,用戶表,用戶類型的名稱
使用三大范式的原則標識的數據庫字段,保證了字段在數據庫表中的唯一性.從而避免了數據庫的數據的冗余.
數據的冗余 : 會出現數據庫操作的數據異常
3.表與表之間的關系
表與表之間的關系根據需求來划分,包括一對一,一對多,多對一,多對多
1.一對一的表設計特征:外鍵表的主鍵就是關聯表的外鍵!外鍵表的主鍵和外鍵是重疊的
2.兩個表的一對多和多對一的關系:主鍵表為一的一方,外鍵表為多的一方,具體划分是根據需求來的
3.表的多對多的關系,在關系型數據庫中,表是不支持一個字段存儲一個集合的值的。
所以關系型數據庫本身表之間是沒有多對多的關系的,多對多的關系是業務邏輯的要求。
數據庫設計遇到表之間多對多的關系會使用是一個中間表來記錄兩個表多對多的關系.4
注意:如果遇到多對多,必須拆分一個中間表