MySQL設計編碼規範

2021-08-07 22:29:01 字數 1102 閱讀 3756

領導最近要求大家寫乙份mysql設計編碼規範,以便以後開發規範化...

1、禁止使用觸發器、儲存過程、外來鍵約束。

2、所有命名都一律小寫,分隔符使用下劃線_。

資料庫命名規範: $系統_$子系統,例如 crm_product、crm_contract等。

表命名規範:[t_v]_$模組名_$表名,例如 t_user_info、t_user_employee。

3、資料庫表及字段均需要增加comment備註資訊,方便理解

4、資料庫表必須有主鍵、嚴禁使用組合主鍵,推薦使用id欄位,且字段為unsigned、自增、pk、uniq

5、資料庫欄位均需設定為not null,避免null資料操作問題,同時設定預設值

6、資料庫索引命名規則,非唯一索引idx_,唯一索引uniq_

7、資料庫庫名、表名、欄位名禁止超過32個字元

8、庫名、表名、欄位名禁止使用mysql保留字

9、臨時庫、表名必須以tmp為字首,以日期為字尾,如:tmp_test01_20161127

10、盡量不使用text、blob型別

11、禁止在資料庫表中儲存明文密碼

12、使用盡可能小的varchar欄位,varchar(n)中的n表示字元書而非位元組數

13、資料庫表使用innodb儲存引擎

14、資料庫表字符集統一使用utf8mb4字符集

15、禁止在資料庫表中儲存、檔案等大資料

17、禁止從測試、開發環境直連線上資料庫

18、單張表索參數量不超過5個

19、單個索引中的字段數不超過5個

20、組合索引建議包含所有欄位名,過長的欄位名可用採用縮寫形式,如:idx_mobile_token_valid

21、聯表查詢時,join列的資料型別必須相同,並且需要建立索引

22、跨模組之間嚴禁連線查詢。

23、嚴禁三個表以上的鏈結查詢。

24、嚴禁使用mysql函式,例如:now()、rand()、sysdate()、current_user()。

25、每個表不許超過20個字段,大字段務必拆分出來。

26、嚴格禁止單條記錄超過8k。

27、禁止冗餘索引,例如:(a,b,c)、(a,b),後者為冗餘索引。

領域驅動設計2 編碼規範

1 從使用者處接收命令操作,改變底層系統狀態。2 從使用者處接收查詢操作,將底層系統狀態以合適的形式呈現給使用者。遮蔽資料儲存細節,這些資料 可以是資料庫 mysql,nosql 搜尋引擎 檔案系統 也可以是其他微服務等。向其他層提供 通用的 技術能力 比如工具類,第三方庫類支援,常用基本配置,資料...

Mysql設計規範

資料庫命名規範 1 所有資料庫物件名稱必須使用小寫字母並用下劃線分割。2 所有資料庫物件名稱禁止使用mysql保留關鍵字 3 資料庫物件的命名要能做到見名識義,並且最好不要超過32個字元。4 臨時表必須以tmp為字首並以日期為字尾。5 備份庫,備份表必須以bak為字首並以日期為字尾。6 所有儲存相同...

php 編碼規範哪些 php編碼規範

1.php 必須以完整的形式來定界 即不要使用php 短標籤 且保證在關閉標籤後不要有任何空格。2.當乙個字串是純文字組成的時候 即不含有變數 則必須總是以單引號 作為定界符。例如 a example string 3.變數替換中的變數只允許用 變數名 的形式。例如 greeting hello n...