1

我试图用 11 个数字填充一个字段,但 MySQL 不允许我使用数据类型 INT 插入超过 10 个数字。我最多只能插入 10 位数字。这是错误:

ERROR 1264: Out of range value for column 'cpf' at row 1
SQL Statement:
UPDATE `mercado`.`cliente` SET `cpf`=12345678901 WHERE `cpf`='20'

有谁知道为什么?

4

3 回答 3

1

请参阅MySQL 数据类型文档。anINT的最大值是 2,147,483,647,恰好包含 10 位数字。

于 2012-06-16T02:21:40.613 回答
0

您限制的INT类型列从-21474836482147483647。如果要输入上述范围之外的值,请使用BIGINT.

于 2012-06-16T02:22:20.143 回答
0

那是因为数据类型限制。数据类型的范围INT仅从-21474836482147483647。您可以使用数据类型BIGINT代替。但我认为,如果您使用非常大的数字,最好的方法是使用文本数据类型(如VARCHAR)。如果您需要数字进行计算,只需将其转换即可。

于 2012-06-16T02:27:31.417 回答