mysql中 int(M)中M

http://dev.mysql.com/doc/refman/5.0/en/numeric-type-overview.html

这个M 就是maximum display
width。那什么是maximum display width?看了下面的例子很容易说明了,注意zerofill

mysql> create table b ( b
int (4));
Query OK, 0 rows affected (0.25 sec)

mysql> insert into b values
(
12345);

Query OK, 1 row affected (0.00 sec)

mysql> select * from b;

+-------+
| b     |
+-------+
| 12345 |

+-------+
1 row in set (0.00 sec)

mysql> alter table b change b b
int(11);
Query OK, 1 row affected (0.00 sec)
Records:
1  Duplicates: 0  Warnings: 0

mysql> select * from b;

+-------+
| b     |
+-------+
|

12345 |
+-------+
1 row in set (0.00 sec)

mysql> alter table b change b b
int(11) zerofill;
Query OK, 1 row affected (0.00
sec)
Records: 1  Duplicates: 0  Warnings: 0

mysql> select * from b
;
+-------------+
|
b           |

+-------------+
| 000000
12345 |
+-------------+
1 row
in set (0.00 sec)

mysql> alter table b change b b
int(4) zerofill;
Query OK, 1 row affected (0.08
sec)
Records: 1  Duplicates: 0  Warnings: 0

mysql> select * from b
;
+-------+
| b     |
+-------+
| 10000 |

+-------+
1 row in set (0.00 sec)

mysql> alter table b change b b
int(6) zerofill;
Query OK, 1 row affected (0.01
sec)
Records: 1  Duplicates: 0  Warnings: 0

mysql> select * from b;

+--------+
| b      |
+--------+
|
0
12345 |
+--------+
1 row in set (0.00 sec)

以上的例子说明了,这个M的表示显示宽度,他跟着zerofill
一起才有意义。就算前面设置的M的值比数值实际的长度小对数据也没有任何影响。

mysql中 int(M)中M,布布扣,bubuko.com

时间: 2024-10-22 00:42:37

mysql中 int(M)中M的相关文章

关于mysql中int(1)中int后面的数字

详解mysql int类型的长度值问题 作者:追逐_something 我的朋友海滨问我mysql在建表的时候int类型后的长度代表什么? 是该列允许存储值的最大宽度吗? 为什么我设置成int(1), 也一样能存10,100,1000呢. 当时我虽然知道int(1),这个长度1并不代表允许存储的宽度,但却没有一个合理的解释. 或者说对这个长度也没有真正的研究过到底代表什么, 平时都用int(11), 也不知道为什么要11位. 所以我在网上查阅了一些资料, 也仔细的看了mysql手册关于int d

关于mysql中int(1)中int后面的数字(转发)

详解mysql int类型的长度值问题 作者:追逐_something 我的朋友海滨问我mysql在建表的时候int类型后的长度代表什么? 是该列允许存储值的最大宽度吗? 为什么我设置成int(1), 也一样能存10,100,1000呢. 当时我虽然知道int(1),这个长度1并不代表允许存储的宽度,但却没有一个合理的解释. 或者说对这个长度也没有真正的研究过到底代表什么, 平时都用int(11), 也不知道为什么要11位. 所以我在网上查阅了一些资料, 也仔细的看了mysql手册关于int d

MySQL中int(5) 中的5代表什么意思?

对于INT型,MySQL支持指定显示宽度例如:int(5):表示如果数值宽度小于5位,则填满宽度,保证总宽度为5位.默认为int(11),配合zerofill可以看到效果. DROP TABLE IF EXISTS tab_5; CREATE TABLE tab_5(id int(5))ENGINE=innodbDEFAULT CHARSET=utf8; INSERT INTO tab_5VALUES (123); INSERT INTO tab_5VALUES (12345); INSERT

mysql中int、bigint、smallint和tinyint的区别与长度

对比发现 int bigint smallint 和 tinyint 类型,如果创建新表时没有指定 int(M) 中的M时,默认分别是 : int             -------     int(11) bigint       -------     bigint(20) smallint   -------     smallint(6) tinyint     -------     tinyint(4) 下面是这几种类型的取值范围 参考:http://www.2cto.com/d

MySQL数据库中int,bigint,smallint和tinyint区别

最近使用MySQL数据库的时候遇到了多种数字的类型,主要有int,bigint,smallint和tinyint.其中比较迷惑的是int和smallint的差别.今天就在网上仔细找了找,找到如下内容,留档做个总结: 使用整数数据的精确数字数据类型. bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字).存储大小为 8 个字节. P.S. bigint已经有长度了,在mysql建表中的len

Mysql中int,bigint,smallint和tinyint的范围

http://www.jb51.net/article/31946.htm 最近使用mysql数据库的时候遇到了多种数字的类型,主要有int,bigint,smallint和tinyint.其中比较迷惑的是int和smallint的差别.今天就在网上仔细找了找,找到如下内容,留档做个总结: 使用整数数据的精确数字数据类型. bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字).存储大小为

转:mysql中int、bigint、smallint 和 tinyint的区别与长度的含义

bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字).存储大小为 8 个字节. P.S. bigint已经有长度了,在mysql建表中的length,只是用于显示的位数 int 从 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647) 的整型数据(所有数字).存储大小为 4 个字节.int 的 SQL-92 同义字为 integer. smal

mysql中int、bigint、smallint 和 tinyint的区别详细介绍

bigint 20位数字 8个字节从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字).存储大小为 8 个字节. 9223372036854775808P.S. bigint已经有长度了,在mysql建表中的length,只是用于显示的位数 int 11位数字 4个字节从 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647) 的整型数据(所有数字).存储大小

mysql中int、bigint、smallint 和 tinyint的区别与长度的含义

最近使用mysql数据库的时候遇到了多种数字的类型,主要有int,bigint,smallint和tinyint.其中比较迷惑的是int和smallint的差别.今天就在网上仔细找了找,找到如下内容,留档做个总结: 使用整数数据的精确数字数据类型. bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字).存储大小为 8 个字节. P.S. bigint已经有长度了,在mysql建表中的len