建数据库表需要注意哪些点
1.面向對象原則
要保證表中的每列與主鍵相關。
2.表職能單一性原則
如果一張表負責了兩個或兩個以上的職責,那么該表應進行拆分。
3.表字段與表直接關聯原則
如果一個字段與當前表是間接關聯的,那么就該創建一張新的表來保存該字段。
4.字段最小原子化原則
一個字段如果包含了多個信息或含義,則該字段就應該拆成多個字段。
5.字段名唯一原則
所有字段不允許單個單詞形式存在,例:機構信息表code改為org_code,name改為org_name。好處:避免一些容易出現的SQL錯誤;方便代碼檢索;減少部分SQL中輸出字段的別名設置;看到字段名或屬性名就能知道其含義。
6.不創建外鍵關聯,只是外鍵關系
設計中的外鍵僅是為了讓大家知道其對應的表才寫進去的,實際并不需要在數據庫中創建外鍵。目的是為了確保表之間的獨立性。
7.盡量少使用存儲過程
除非某個功能對性能要求非常高,且沒辦法通過存儲過程以外的方式來提升性能時,才考慮使用存儲過程。
8.應針對所有表的主鍵和外鍵建立索引
有針對性的建立組合屬性的索引,提高檢索效率。
9.必須建立業務主鍵
除自增id之外,需要使用業務主鍵,常使用”業務前綴+時間戳+隨機數”組成,優點:實現簡單,與數據庫無關,移植性較好。
10.所有字段不允許空值
所有字段不允許空值,varchar類型默認統一設置為”Empty String”,此處不使用NULL。區別:NULL,默認存為(Null),指的是對象;Empty String默認存為空串””,在java中進行非空判斷存在區別userId==null/userId.equals(“”);數值類型默認為0
11.表中字段根據數據類型統一
數值類:bigint
金額:decimal;
狀態:tinyint (從數據庫底層來說是以二進制方式傳輸,此處存字符運行效率較高varchar(2)—了解)
時間:datetime
12.每張表需要建立索引
建立索引方式:選取使用頻率最高的字段作為索引字段
大概就是這些啦,也是搜索相關文檔整理出來的一部分
總結
以上是生活随笔為你收集整理的建数据库表需要注意哪些点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 产品的分类(民用商用级、工业级、汽车电子
- 下一篇: Cadence 原理图操作记录