09——规范数据库设计
生活随笔
收集整理的這篇文章主要介紹了
09——规范数据库设计
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
當數據庫比較復雜的時候,我們就需要詳細的設計數據庫
9.1 規范設計數據庫的原因
糟糕的數據庫設計:
- 數據冗余,浪費空間
- 數據庫插入和刪除都會麻煩,異常【屏蔽使用物理外鍵】
- 程序的性能差
良好的數據庫設計:
- 節省內存空間
- 保證數據庫的完整性
- 方便我們開發系統
軟件開發中,關于數據庫的設計
- 分析需求:分析業務和需要處理的數據庫的需求
- 概要設計:設計關系圖 E-R圖
9.2 設計數據庫的步驟(個人博客)
- 收集信息,分析需求
- 用戶表(用戶登錄注銷,用戶的個人信息,寫博客,創建分類)
- 分類表(文章分類,誰創建的)
- 文章表(文章的信息)
- 友鏈表(友鏈信息)
- 自定義表(系統信息,某個關鍵的字,或者某些主字段)
- 說說表(發表心情…id ,content ,time)
- 標識實體(把需求落地到每個字段)
- 標識實體之間的關系
- 寫博客 user–>blog
- 創建分類 user–>category
- 關注 user–>user
- 友鏈–>links
- 評論 user–>user
9.3 三大范式
為什么需要數據規范化?
- 信息重復
- 更新異常
- 插入異常
- 刪除異常
- 無法正常顯示異常
- 刪除異常
- 丟失有效的信息
三大范式
第一范式(1NF)
原子性:保證每一列不可再分
第二范式(2NF)
前提:滿足第一范式
每張表只描述一件事情
第三范式(3NF)
前提:滿足第一范式和第二范式
第三范式需要確保數據表中的每一列數據都和主鍵直接相關,而不能間接相關。
(規范數據庫的設計)
規范性和性能的問題
關聯查詢的表,不得超過三張表
- 考慮商業化的需求和目標(成本和用戶體驗) 數據庫的性能更加重要
- 再規范性能的問題的時候,需要適當的考慮一下,規范性
- 故意給某些表加一些冗余的字段(從多表,變成單表)
- 故意增加一些計算列(從大數據量降低為小數據量的查詢:索引)
總結
以上是生活随笔為你收集整理的09——规范数据库设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微博短视频怎么去水印 视频消重软件推荐
- 下一篇: MySQL---规范数据库设计