mysql int() 括号中数值的作用

mysql int(3) ,括号中的3一直误以为是限制int类型数据的长度,实则并不是,括号中的值是限制显示宽度,下面举例说明。

建表语句如下,ZEROFILL 用于设置填充零:

CREATE TABLE int_test (
id int(11) NOT NULL AUTO_INCREMENT,
intdemo int(3) ZEROFILL DEFAULT NULL,  
PRIMARY KEY(id)
);

数据插入语句如下:

INSERT INTO int_test(intdemo) VALUES(1),(11),(111),(1111);

查询结果如下(注意需使用mysql命令行客户端查询):

mysql> select * from int_test;
+----+---------+
| id | intdemo |
+----+---------+
|  1 |     001 |
|  2 |     011 |
|  3 |     111 |
|  4 |    1111 |
+----+---------+
4 rows in set (0.00 sec)

可以看出int(3)中的3限制显示宽度。

原文地址:https://www.cnblogs.com/silenceshining/p/14762195.html