mysql int是什么

mysql中,int是标准整数类型,可以代表普通大小的整数。int数据类型占4个字节,可以是有符号和无符号的,有符号时的存储范围为“-2147483648~2147483647”,无符号时的存储范围为“0~4294967295”;设置int类型的字段可以具有AUTO_INCREMENT属性,实现序列值自增长。

mysql int是什么

本教程操作环境: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视频教程】

以上就是mysql int是什么的详细内容,更多请关注其它相关文章!