Mysql范围中的INT(1)和INT(2)以及StoreData的限制?

时间:2013-02-06 11:01:30

标签: php mysql

IN Mysql:

INT(1) = 2147483647和商店4字节,

那么INT(2) = ?和商店?字节......

我在INT(1)中使用超过2147483647它不起作用! 我在INT(2)中使用相同的值它不起作用?为什么?

解决方案?

4 个答案:

答案 0 :(得分:7)

可选的显示宽度说明符仅在使用 zerofill 时适用,与整数数据类型的内部大小(以字节为单位)无关。它总是4个字节。

应用程序可以使用此可选显示宽度来显示宽度小于为列指定的宽度的整数值,方法是用空格左边填充它们。 (也就是说,此宽度存在于使用结果集返回的元数据中。是否使用它取决于应用程序。)

这是[链接](http://dev.mysql.com/doc/refman/5.5/en/numeric-type-attributes.html

示例更多

  

drop table if if tablename;

     

创建表tablename   (   columnname int(4)unsigned zerofill not null default 0   );

     

插入tablename(columnname)值(123),(456),(1234);

     

从tablename中选择*;

<强>输出

0123

0456

1234

答案 1 :(得分:3)

带括号的数字表示字段返回的位数。您可以在INT(1)中插入任何数字,但只能输出0到9之间的数字。

答案 2 :(得分:2)

MySQL中的INT总是4字节数。

INT类型的语法是INT(M),其中M表示最大显示宽度;但并非所有MySQL客户端都支持此值。

答案 3 :(得分:0)

您应该使用BIGINT获得8个字节(请参阅Integer Types)。肠胃外的数字仅表示最大显示宽度(参见Numeric Type Attributes