我有这个专栏
INT(10) ZEROFILL NOT NULL DEFAULT '0000000000',

但是当我插入9100000010之类的东西时,我得到4294967295

应该在那里允许有10位数字,对吗?

如何正确执行此操作?

最佳答案

Int具有最大值范围:

INT 4   -2147483648 2147483647
        0   4294967295 (unsigned )


因此,由于溢出,您将获得最大值。
使用bigint代替,它有8个字节
你会没事的。

http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html#integer-types

BIGINT  8   -9223372036854775808    9223372036854775807
          0                 18446744073709551615

关于mysql - 当列为INT(10)时为什么不能插入10位数字,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14393672/

10-11 06:05