MySQL数据类型超出范围

我有下表:

CREATE TABLE entries (id INT(10000) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstName VARCHAR(60), surname VARCHAR(60), course VARCHAR(250), subject VARCHAR(500), level VARCHAR(10), dateTime DATETIME);

但我收到以下错误:

  ERROR 1439 (42000): Display width out of range for column 'id' (max = 255)

为什么最大为255?我以为最大值是4294967295?

有任何想法吗?

解决方法:

您正在创建一个显示宽度为10000位数的整数. MySQL显然仅允许255位数字.
您不能以这种方式将整数的最大值限制为任意数.只需使用SMALLINT.那接近您想要的.

顺便说一句我喜欢将ID列设置为SERIAL.它是BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE的别名.它比您显然需要的要宽.但这为您提供了ID列的某种标准.此列中存储的最大值是18446744073709551615.

上一篇:在C#中是否可以使用具有1种以上返回类型的函数?


下一篇:对于C#二进制文件,匿名类的类型信息存储在哪里?