您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
三六零分类信息网 > 盐城分类信息网,免费分类信息发布

mysql int范围与最大值分析

2025/3/18 15:40:56发布12次查看
在sql语句中int代表你要创建字段的类型,int代表整型,11代表字段的长度。
    这个代表显示宽度
整数列的显示宽度与需要用多少个字符来显示该列数值,与该整数需要的存储空间的大小都没有关系,比如,不管设定了显示宽度是多少个字符,bigint都要占用8个字节。
int是整型,(11)是指显示字符的长度,但要加参数的,最大为255,比如它是记录行数的id,插入10笔资料,它就显示00000000001 ~~~00000000010,当字符的位数超过11,它也只显示11位,如果你没有加那个让它未满11位就前面加0的参数,它不会在前面加0
声明整型数据列时,我们可以为它指定个显示宽度m(1~255),如int(5),指定显示宽度为5个字符,如果没有给它指定显示宽度,mysql会为它指定一个默认值。显示宽度只用于显示,并不能限制取值范围和占用空间,如:int(3)会占用4个字节的存储空间,并且允许的最大值也不会是999,而是int整型所允许的最大值。
mysql有五种整型数据列类型,即tinyint,smallint,mediumint,int和bigint。它们之间的区别是取值范围不同,存储空间也各不相同。
在整型数据列后加上unsigned属性可以禁止负数,取值从0开始。
int范围
type bytes minimum value maximum value
    (signed/unsigned) (signed/unsigned)
tinyint 1 -128 127
    0 255
smallint 2 -32768 32767
    0 65535
mediumint 3 -8388608 8388607
    0 16777215
int 4 -2147483648 2147483647
    0 4294967295
bigint 8 -9223372036854775808 9223372036854775807
    0 18446744073709551615
下面为官网的说明
 代码如下 复制代码
be careful when considering enum('t','f') as true binary.
example:
create table `bits` (
`val` enum('t','f') not null
);
mysql> insert into `bits` (`val`) values ('w'), ('t'), ('f');
query ok, 3 rows affected, 1 warning (0.00 sec)
records: 3 duplicates: 0 warnings: 1
mysql> show warnings;
+---------+------+------------------------------------------+| level   | code | message                                  |+---------+------+------------------------------------------+| warning | 1265 | data truncated for column 'val' at row 1 |+---------+------+------------------------------------------+1 row in set (0.00 sec)
mysql> select count(distinct val) from bits;
+---------------------+| count(distinct val) |+---------------------+|                   3 |+---------------------+1 row in set (0.00 sec)
well, shouldn't a binary type have only two distinct values?
(note that it isn't null.)
explanation from manual (10.4.4. the enum type):
-----
if you insert an invalid value into an enum (that is, a string not present in the list of permitted values), the empty string is inserted instead as a special error value. this string can be distinguished from a “normal” empty string by the fact that this string has the numeric value 0. more about this later
盐城分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录