5

在 Mysql 中:

INT(1) = 2147483647并存储 4 个字节,

那么INT(2) = ?存储?字节呢...

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

解决方案 ?

4

4 回答 4

9

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

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

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

更多示例

如果存在表名,则删除表;

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

插入表名(列名)值(123),(456),(1234);

从表名中选择 *;

输出

0123

0456

1234

于 2013-02-06T18:43:54.907 回答
5

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

于 2013-02-06T11:05:05.463 回答
2

MySQL 中的 INT 始终是 4 字节数字。

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

于 2013-02-06T11:10:11.107 回答
0

您应该使用 BIGINT 来获取 8 个字节(请参阅整数类型)。括号中的数字仅表示最大显示宽度(请参阅数字类型属性

于 2013-02-06T11:26:06.417 回答