1. 程式人生 > >int、bigint、smallint、mediumint、tinyint區別

int、bigint、smallint、mediumint、tinyint區別

最近建立資料庫表的時候,某些欄位要用int、bigint、smallint、mediumint、tinyint的時候有點亂。今天就在網上仔細找了找,找到如下內容,留檔做個總結: 
1、BIGINT[(M)] [UNSIGNED] [ZEROFILL] M預設為20:
範圍是 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型資料,儲存大小為 8 個位元組。 
2、INT[(M)] [UNSIGNED] [ZEROFILL]  M預設為11:
範圍是 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647) 的整型資料,儲存大小為 4 個位元組。
3、MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL] M預設為9:
範圍是 -83886088388607的整型資料
4、SMALLINT[(M)] [UNSIGNED] [ZEROFILL] M預設為6:
範圍是 -2^15 (-32,768) 到 2^15 – 1 (32,767) 的整型資料。儲存大小為 2 個位元組。
4、TINYINT[(M)] [UNSIGNED] [ZEROFILL]  M預設為4:
範圍是 0 到 255 的整型資料。儲存大小為 1 位元組。 
int(M) zerofill,加上zerofillM才表現出有點點效果,比如 int(3) zerofill,
你插入到資料庫裡的是10,則實際插入為010,也就是在前面補充加了一個0.如果int(3)int(10)不加zerofill,則它們沒有什麼區別.M不是用來限制int個數的.int(M)的最大值和最小值與undesigned有關