IN Mysql:
INT(1) = 2147483647
和商店4字节,
那么INT(2) = ?
和商店?
字节......
我在INT(1)中使用超过2147483647它不起作用! 我在INT(2)中使用相同的值它不起作用?为什么?
解决方案?
答案 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)