MySQL数据类型不能为空?

时间:2011-05-23 04:01:11

标签: mysql sql

我使用的是MySQL INT(11)数据类型,但必须更改为使用CHAR(45),因为我正在处理大整数。

现在CHAR允许提交空字符串而不是像它应该返回错误。我可以使用其他数据类型吗?

3 个答案:

答案 0 :(得分:2)

您可以使用BIGINT或UNSIGNED BIGINT。

无论如何,您应该在应用程序级别进行一些验证,因此当他发送的数据无效时,它会向用户显示一些有意义的错误消息。这与使用的数据类型无关。

答案 1 :(得分:1)

我会使用BigInt,请查看此页面:http://dev.mysql.com/doc/refman/5.0/en/numeric-type-overview.html

答案 2 :(得分:1)

如果INT没有你需要的范围,你可以'升级'到BIGINT

一般来说,如果值是数字,你应该坚持使用数字数据类 - 不这样做通常会导致很难找到错误和问题。

半步将INT指定为UNSIGNED(通过不包括数据空间中数字行的负侧,基本上使范围加倍)

有关numeric types的详细信息,请参阅文档。