mysql-數字類型:自增主鍵踩坑


1. 不推薦使用整形設置unsigned 若非使用參數 sql_mode 務必額外添加上選項 NO_UNSIGNED_SUBTRACTION;

  unsigned的字段當聚合計算的時候當出現負數的時候會報錯,如果不加上面的參數時

2. 自增整形類型做主鍵建議使用bigint 

  因為int最大范圍42億 范圍對一般業務來說還是小 

3. mysql8.0之前自增類型在mysql會有回溯的情況

  舉例: 自增整形主鍵3 先delete 然后插入新的值時主鍵會是4,這時不發生回溯,當刪除3之后重啟mysql 再插入主鍵仍是3

4. 當自增整形主鍵達到最大值時再添加會報重復錯誤 

  推崇在大業務量的情況下主鍵使用字符串

5. 不要使用float/double 后續版本會不支持

6. 賬戶余額等字段使用bigint 不使用decimal

  decimal是一個變長字段,金額不統一范圍很大,不好統一

  decimal是通過二進制實現的編碼計算效率不如整型

  bigint可以存儲千兆級別的數值

  bigint定長性能好


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM