關於mysql數據庫中,字段長度的一個解釋,一直以爲int長度爲1時,只能插入0-9的數字,發現完全不是,具體如下:
1、varchar類型的長度是指這個字段的字符(字母或漢字)個數。
2、數字類型的長度不是這個意思:
(1)int類型 INT(M),M代表的是顯示寬度,長度的設定值範圍1~255(設置0時自動轉爲11,不設置時自動轉爲默認的11)(顯示寬度),在此範圍內任意長度值的字段值範圍都是-2147483648~2147483647(即-2³¹-1~2³¹-1)
(2)tinyint類型:長度設定值範圍1~255(設置0時自動轉爲4,不設置時自動轉爲默認的4)(顯示寬度),在此範圍內任意長度值的字段值範圍都是-128~127(-2⁷-1~2⁷-1)
也就是說:int(1)、int(4)、int(11)和int(110)表示意思是一樣的
要查看出不同效果記得在創建類型的時候加 zerofill這個值(INT(M) ZEROFILL),表示用0填充,否則看不出效果的
參考資料:
https://blog.csdn.net/superit401/article/details/78237780?utm_source=blogxgwz0