我使用的是MySQL INT(11)
数据类型,但必须更改为使用CHAR(45)
,因为我正在处理大整数。
现在CHAR
允许提交空字符串而不是像它应该返回错误。我可以使用其他数据类型吗?
答案 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的详细信息,请参阅文档。