• 技术文章 >数据库 >mysql教程

    mysql int多少字节

    青灯夜游青灯夜游2022-06-15 17:51:51原创153

    mysql中,int类型在存储时需要4 个字节。int代表标准整数,可表示普通大小的整数;int类型可以是有符号或无符号的,无符号范围是“0~4294967295”,有符号范围是“-2147483648~2147483647”。因为整数类型表示确切数字,所以通常将int列用作表的主键,且设置AUTO_INCREMENT属性,每增加一条记录,int列数据会自动以相同步长进行增长。

    本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

    MySQL 主要提供的整数类型有 TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,其属性字段可以添加 AUTO_INCREMENT 自增约束条件。

    其中int类型:

    类型名称说明存储需求
    INT普通大小的整数4个字节

    在MySQL中,INT代表标准整数,它可以是1,100,4,-10等,它不能是1.2,5/3等。整数可以是零,正和负。

    MySQL INT数据类型可以是有符号或无符号。

    类型有符号无符号
    最小值最大值最小值最大值
    INT-2147483648(-216)2147483647(-216)04294967295(-232)

    在列中使用INT

    因为整数类型表示确切的数字,所以通常将它用作表的主键。此外,INT列可以具有 AUTO_INCREMENT 属性,这样每增加一条记录,int列数据会自动以相同步长进行增长。

    当你 插入一个NULL值或0到INT AUTO_INCREMENT列,列的值设置为下一个序列值。请注意,序列值以1开头。

    当您向AUTO_INCREMENT列中插入一个非零或零值时,列将接受NULL值。此外,序列被重置为插入值的下一个值。

    让我们看一个使用带AUTO_INCREMENT 属性的整数列的表的示例 。

    首先,使用以下语句创建一个新表items以整数列作为主键:

    CREATE TABLE items (
        item_id INT AUTO_INCREMENT PRIMARY KEY,
        item_text VARCHAR(255)
    );

    您可以在CREATE TABLE上使用INT或INTEGER,因为它们相等的。无论何时向items表中插入新行,item_id列的值都会增加1。

    接下来,以下INSERT语句在items表中插入三行。

    INSERT INTO items(item_text)
    VALUES('laptop'), ('mouse'),('headphone');

    然后,使用以下SELECT语句从items表中查询数据:

    SELECT 
        *
    FROM
        items;

    1.png

    之后,插入一个新行,明确指定item_id的值。

    INSERT INTO items(item_id,item_text)
    VALUES(10,'Server');

    由于item_id列的当前值为 10,序列将重置为11.如果插入新行,则AUTO_INCREMENT列将使用11作为下一个值。

    INSERT INTO items(item_text)
    VALUES('Router');

    最后,再次查询items表的数据以查看结果。

    SELECT 
        *
    FROM
        items;

    2.png

    注意:自MySQL 5.1以来,AUTO_INCREMENT列仅接受正值。AUTO_INCREMENT列不支持负值 。

    拓展

    加上 AUTO_INCREMENT 约束条件后,字段中的每个值都是自动增加的。因此,这个字段不可能出现相同的值。通常情况下,AUTO_INCREMENT 都是作为 id 字段的约束条件,并且将 id 字段作为表的主键。

    【相关推荐:mysql视频教程

    以上就是mysql int多少字节的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:mysql
    上一篇:mysql中clob和blob的区别是什么 下一篇:mysql中怎么将字符串转为浮点数
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• mysql怎么将时分秒转换成秒数• mysql怎么将秒数转换成时分秒• mysql中order by怎么用• linux怎么查询mysql端口• mysql locate()怎么用
    1/1

    PHP中文网