背景
一個平臺或系統隨著時間的推移和用戶量的增多,數據庫操作往往會變慢;而在JAVA應用開發中數據庫更是尤為重要,絕大多數情況下數據庫的性能決定了程序的性能,如若前期埋下的坑越多到后期數據庫就會成為整個系統的瓶頸;因此,更規范化的使用MySQL在開發中是不可或缺的。
一、MySQL數據庫命名規范
1、數據庫所有表前綴均使用項目名稱首字母縮寫;
2、數據庫所有對象名稱均使用小寫字母,并且單詞之間通過下劃線分開;
3、數據庫所有對象名稱禁止使用MySQL保留字及關鍵字,涉及到關鍵字的SQL查詢需要將關鍵字用單引號括起來;
4、數據庫所有對象名稱不超過32個字符,并且命名要遵循見名知意原則;
5、數據庫臨時表必須以 pro_tmp_ 為前綴并且以日期 20190917 為后綴,備份表必須以 pro_bac 為前綴并以時間戳為后綴;(pro為項目名稱首字母縮寫)
6、數據庫所有存儲相同數據的列名和列類型必須保持一致。
二、MySQL數據庫基本設計規范
1、若無特殊說明,建表時一律采用Innodb存儲引擎。
選擇合適的引擎可以提高數據庫性能,如InnoDB和MyISAM,InnoDB和MyISAM是許多人在使用MySQL時最常用的兩個表類型,這兩個表類型各有優劣,視具體應用而定;
基本的差別為:MyISAM類型不支持事務處理等高級處理,而InnoDB類型支持;MyISAM類型的表強調的是性能,其執行速度比InnoDB類型更快,但是不提供事務支持,而InnoDB提供事務支持以及外部鍵等高級數據庫功能;
因此,其支持事務處理、支持外鍵、支持崩潰修復能力和并發控制是我們建表時首選的存儲引擎。
2、數據庫和表的字符集統一使用UTF8
數據庫和表的字符集統一使用utf8,若是有字段需要存儲emoji表情之類的,則將表或字段設置成utf8mb4;因為,utf8號稱萬國碼,其無需轉碼、無亂碼風險且節省空間,而utf8mb4又向下兼容utf8。
3、設計數據庫時所有表和字段必須添加注釋
使用Comment從句添加表和列的備注,或直接在數據庫連接工具的注釋欄添加注釋,從項目開始就進行數據字典的維護。
使用Comment從句添加注釋如:
-- 1、創建表: