gpt4 book ai didi

mysql整数数据类型深入解析

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章mysql整数数据类型深入解析由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

此处我们给int char没有给出他们的宽度,系统默认会给它分配一个宽度。 M指示最大显示宽度。最大有效显示宽度是255。显示宽度与存储大小或类型包含的值的范围无关 我们来进行下试验 。

复制代码代码如下

mysql(root@localhost:test 03:19:00)>create table c ( -> id int not null, -> name char not null); Query OK, 0 rows affected (0.25 sec) mysql(root@localhost:test 03:19:34)>desc c; +-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | id | int(11) | NO | | NULL | | | name | char(1) | NO | | NULL | | +-------+---------+------+-----+---------+-------+ 2 rows in set (0.00 sec) 。

那么我们可以看到这里,系统会自动为我们的数据类型给出一个默认的宽带值,这里这个宽度值其实只有在zerofill的作用下才能起到一定的作用。在下面我们看下其他的默认值是多少,  。

复制代码代码如下

mysql(root@localhost:test 03:34:53)>alter table c modify id smallint; Query OK, 0 rows affected (0.05 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql(root@localhost:test 03:39:39)>desc c; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | id | smallint(6) | YES | | NULL | | | name | varchar(10) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in set (0.00 sec) mysql(root@localhost:test 03:39:44)>alter table c modify id bigint; Query OK, 4 rows affected (0.23 sec) Records: 4 Duplicates: 0 Warnings: 0 mysql(root@localhost:test 03:40:12)>desc c; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | id | bigint(20) | YES | | NULL | | | name | varchar(10) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in set (0.01 sec) 。

这里我们再来看下当插入值大于数据类型的取值范围的情况:  。

复制代码代码如下

mysql(root@localhost:test 03:25:58)>insert into c values(300,'chen'); Query OK, 1 row affected, 2 warnings (0.08 sec) mysql(root@localhost:test 03:26:20)>show warnings; +---------+------+---------------------------------------------+ | Level | Code | Message | +---------+------+---------------------------------------------+ | Warning | 1264 | Out of range value for column 'id' at row 1 | | Warning | 1265 | Data truncated for column 'name' at row 1 | +---------+------+---------------------------------------------+ 2 rows in set (0.00 sec) mysql(root@localhost:test 03:26:27)>select * from c; +------+------+ | id | name | +------+------+ | 127 | c | +------+------+ 1 row in set (0.02 sec) mysql(root@localhost:test 03:26:40)>insert into c values(320,'chen'); Query OK, 1 row affected, 2 warnings (0.05 sec) mysql(root@localhost:test 03:26:53)>select * from c; +------+------+ | id | name | +------+------+ | 127 | c | | 127 | c | +------+------+ 2 rows in set (0.00 sec) 。

这里的tinyint是占有一个字节,就是可以表示从0-255这个范围的整数,可是这里为什么直到127呢,原因是我们没有给他设定无符号类型的。  。

最后此篇关于mysql整数数据类型深入解析的文章就讲到这里了,如果你想了解更多关于mysql整数数据类型深入解析的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com