mysql 数据类型的问题.

我的问题: 
1、为什么在申明字段时,指定的数据类型还得指定长度呢?比如smallint它内部定义为两个字节,但是我们在用的时候可以指定 4,5,6等长度都行??那它内部定义还有意义吗?
2、像BLOG这种二进制的类型,内部已经标识了只大长度是多少多少,但是你也可以定义超过它本身的长度?这到底是怎么回事?

谢谢大家,帮小弟解决疑问。

作者: zhaozhefeng280   发布时间: 2011-05-12

当类型设置zerofill时,显示int(5) 显示至少五位,不到用0填充


mysql> create table testabc(a int(5) zerofill);
Query OK, 0 rows affected

mysql> insert into testabc values(1);
Query OK, 1 row affected

mysql> select * from testabc;
+-------+
| a |
+-------+
| 00001 |
+-------+
1 row in set

作者: rucypli   发布时间: 2011-05-12