- 论坛徽章:
- 0
|
本帖最后由 冷月汉宫秋 于 2014-12-05 16:47 编辑
各位大牛们,请教一个问题,我实在是搞不清了这些字段类型后面的长度具体含义了。网上查找说是代表最大显示宽度,但是我测试了下,发现不管我int(M)的长度设为多少,插入长度都不能超过10,一旦超过,就报warning了!!
举例:
mysql> alter table t1 modify a int(1);
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> insert into t1 values(1234567890);
Query OK, 1 row affected (0.06 sec)
mysql> insert into t1 values(12345678901);
Query OK, 1 row affected, 1 warning (0.00 sec)
mysql> show warnings;
+---------+------+--------------------------------------------+
| Level | Code | Message |
+---------+------+--------------------------------------------+
| Warning | 1264 | Out of range value for column 'a' at row 1 |
+---------+------+--------------------------------------------+
1 row in set (0.00 sec)
mysql> alter table t1 modify a int(255);
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> insert into t1 values(1234567890);
Query OK, 1 row affected (0.00 sec)
mysql> insert into t1 values(12345678901);
Query OK, 1 row affected, 1 warning (0.00 sec)
mysql> show warnings;
+---------+------+--------------------------------------------+
| Level | Code | Message |
+---------+------+--------------------------------------------+
| Warning | 1264 | Out of range value for column 'a' at row 1 |
+---------+------+--------------------------------------------+
1 row in set (0.00 sec)
|
|