mysql int(10)中的10表示的真正含义

int(10): 之前总以为其中的10表示字段所能表示的位数,其实发现理解错了,这个10表示的是数据显示的长度为10位。

如:int(2):并不表示数据的大小最大为99,其最大的值和int表示的最大值一样,只是表示查询时显示的结果长度为2位

int

从 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 SQL-92 同义字为 integer

无符号时,表示的范围为:0~4294967295

有符号时,表示的范围为:-2147483648~2147483647

 

 

int(M) [undesigned] [zerofill],加上zerofill后则会对于不满足指定的显示位的数据会在其前面加上0

 

mysql> create table t (t int(3) zerofill);
Query OK, 0 rows affected (0.00 sec)

mysql> insert into t set t = 10;
Query OK, 1 row affected (0.00 sec)

mysql> select * from t;
+——+
| t |
+——+
| 010 |
+——+
1 row in set (0.11 sec)

 

 

猜你喜欢

转载自daizj.iteye.com/blog/2248012