int(M) M指示最大顯示寬度。最大有效顯示寬度是255。顯示寬度與存儲大小或類型包含的值的範圍無關;mysql
因此int(3)與int(11)後的括號中的字符表示須要顯示的寬度。整數列的顯示寬度與mysql須要用多少個字符來顯示該列數值,與該整數須要的存儲空間的大小都沒有關係。不管是int(3)仍是int(11)只要是int類型能存儲時佔用4個字節,存儲的數據上限都是2147483647(有符號型)或4294967295(無符號型)。
sql
類型 |
字節 | 最小值(帶符號) | 最大值(帶符號) | 最小值(無符號) | 最大值(帶符號) |
tinyint | 1 | -128 |
127 |
0 | 255 |
smallint | 2 | -32768 |
32767 | 0 | 65535 |
mediumint | 3 | -8388608 | 8388607 | 0 | 16777215 |
int | 4 | -2147483648 | 2147483647 | 0 | 4294967295 |
bigint | 8 | -9223372036854775808 | 9223372036854775807 | 0 | 18446744073709551615 |