mysql int是什麼

2022-06-15 18:00:34

在mysql中,int是標準整數型別,可以代表普通大小的整數。int資料型別佔4個位元組,可以是有符號和無符號的,有符號時的儲存範圍為「-2147483648~2147483647」,無符號時的儲存範圍為「0~4294967295」;設定int型別的欄位可以具有AUTO_INCREMENT屬性,實現序列值自增長。

本教學操作環境:windows7系統、mysql8版本、Dell G3電腦。

mysql int型別

在mysql中,int是標準整數型別,可以代表普通大小的整數,佔4個位元組。設定int型別的欄位可以具有AUTO_INCREMENT屬性,實現序列值自增長。

MySQL支援所有標準SQL整數型別INTEGER或INT和SMALLINT。另外,MySQL提供 了標準SQL TINYINT MEDIUMINT,並BIGINT 作為標準SQL的擴充套件。

MySQL INT 資料型別可以是有符號和無符號的。下表說明了每種整數型別的特徵,包括以位元組為單位的儲存,最小值和最大值。

型別儲存(位元組)有符號無符號
最小值最大值最小值最大值
TINYINT1-128(-24)127(24)0255(28)
SMALLINT2-32768(-28)32767(-28)065535(-216)
MEDIUMINT3-8388608(-212)8388607(-212)016777215(-224)
INT4-2147483648(-216)2147483647(-216)04294967295(-232)
BIGINT8-9223372036854775808(-232)9223372036854775807(-232)018446744073709551615(-264)

MySQL INT和顯示寬度屬性

MySQL提供了一個擴充套件,允許您指定顯示寬度和INT資料型別。顯示寬度包含在INT關鍵字後面的括號內,例如,INT(5)指定INT顯示寬度為五位的a。

請務必注意,display width屬性不控制列可以儲存的值範圍。應用程式通常使用display width屬性來格式化整數值。MySQL包含display width屬性作為返回結果集的後設資料。

MySQL INT具有ZEROFILL屬性

除了顯示寬度,MySQL還提供了非標準ZEROFILL 屬性。在這種情況下,MySQL將空格替換為零。請考慮以下範例。

首先,zerofill_tests使用以下語句建立一個名為的表:

CREATE TABLE zerofill_tests(
    id INT AUTO_INCREMENT PRIMARY KEY,
    v1 INT(2) ZEROFILL,
    v2 INT(3) ZEROFILL,
    v3 INT(5) ZEROFILL
);

其次,在zerofill_tests表中插入一個新行。

INSERT into zerofill_tests(v1,v2,v3)
VALUES(1,6,9);

第三,從zerofill_tests表中查詢資料。

SELECT 
    v1, v2, v3
FROM
    zerofill_tests;

1.png

v1列的顯示寬度為2的ZEROFILL.因此它的值為1,因此,您可以在輸出中看到01。MySQL將第一個空格替換為0。

v2列的顯示寬度為3的 ZEROFILL。因此,它的值為6,其它值以00填充。

v3列的顯示寬度為5 的ZEROFILL,而其值為9,因此MySQL 在輸出中的0000數位的開頭填充。

注意:如果ZEROFILL對整數列使用屬性,MySQL將自動向列新增 UNSIGNED屬性。

【相關推薦:】

以上就是mysql int是什麼的詳細內容,更多請關注TW511.COM其它相關文章!