>[danger]### 字段Tips:
* 根據業務區分使用tinyint/int/bigint,分別會占用1/4/8字節
* 根據業務區分使用char/varchar
* 字段必須定義為NOT NULL并且提供默認值。
* 顯式指定自增 int/bigint 作為主鍵。
* 字符集統一使用utf8。
* 存儲emoj表情,使用UTF8mb4
* 時間類盡量使用int類型,`timestamp`僅占用4字節,業務要求可設置為datetime或者TIMESTAMP等
* IPv4地址采用4字節int unsigned。
* 使用TINYINT來代替ENUM類型 。
* 不推薦使用`blob`,`text`等類型。它們都比較浪費硬盤和內存空間,影響系統性能。
* 存儲金錢的字段,【建議】用`int`,程序端乘以100和除以100進行存取。因為`int`占用4字節,而`double`占用8字節,空間浪費。
***
>[danger]### 表
* 單實例表個數必須控制在2000個以內
* 單表分表個數必須控制在1024個以內
* 表必須有主鍵,推薦使用UNSIGNED整數為主鍵
***
>>[warning]關于NULL
* NULL的列使用索引,索引統計,值都更加復雜,MySQL更難優化
* NULL需要更多的存儲空間
* NULL只能采用IS NULL或者IS NOT NULL,而在=/!=/in/not in時有大坑
***
<br>
詳細存儲大小參加下圖:

- 序言
- 為什么要編碼規范?
- 如何進行編碼規范?
- 編碼規范宏觀微觀細節
- PHP編碼規范
- 基礎規范
- 1 語法規范
- 2 變量命名規范
- 3 常量命名規范
- 4 類命名規范
- 5 函數命名規范
- 6 方法命名規范
- PSR-規范
- 基本代碼規范
- Tp項目規范
- TP命名規范
- Tp目錄規范
- Tp基礎目錄構架
- Tp項目開發思考
- Tp控制器規范
- 控制器構架
- Tp模型規范
- 模型性能優化
- Tp業務規范
- 返回結構規范
- 業務異常規范
- Tp輸出規范
- Restful API
- 模板渲染輸出
- Tp異常規范
- 異常碼狀態碼
- 異常輸出方式
- Tp驗證規范
- Tp路由規范
- Tp加密規范
- Password Hashing
- Tp緩存規范
- 常見數據緩存
- 緩存設計思考
- Tp日志規范
- 日志信息
- 日志分析
- Tp日志接管分析
- Tp性能優化
- vendor包規范
- 項目自動化思考
- 項目檢測告警思考
- 項目注釋規范
- Mysql設計規范
- 序言
- 命名規范
- 表及字段規范
- 索引規范
- 索引原理
- Sql規范
- 事務規范
- 讀寫分離
- 樂觀鎖悲觀鎖
- 數據庫審計
- 性能優化
- 查詢優化神器
- 慢查詢優化步驟
- 分庫分表、分區表
- 根據sql日志篩選數據
- 設計原則
- MongoDB規范
- MongoDB基礎
- MongoDB設計
- MongoDB安全性
- MongoDB備份
- 操作手冊規范
- API文檔說明規范
- 管理端操作手冊
- 用戶使用說明書
- 溯源項目構想