在MYSQL数据库中,我使用了phone.no列,它的数据类型为int。我把它从int(13)带到int(30),但它的最大值是2147483647.
我希望最大值为9999999999。
答案 0 :(得分:5)
建议不要对电话号码使用INT(或数字数据类型)。 int的最大值为 2147483647 ,因此您不能使用多于其中的值。
最好使用varchar
来存储电话号码而不是int或bigint。您可以使用varchar(15)
并确实在该字段上创建索引。另请查看维基百科上的Telephone Numbers。
varchar
代替Int
的原因可以是: -
arithmetic operation(+,-,*,/)
,因此在我看来,使用varchar是一个不错的选择。答案 1 :(得分:1)
INT的最大值为2147483647.如果您想要更大的尺寸,则需要使用BIGINT,但对于电话号码,VARCHAR是更好的选择。
答案 2 :(得分:0)
在Mysql中你的改变:" int(13)到int(30)" 仅应用于选择时的表示,而不影响应用于整数时列的大小。 (仅适用于varchars)
您在前面的答案中所述的内容使用了big int类型。
在任何情况下讨论电话号码时都不是一个好的选择。当比较时,008877和00008877是相同的。因此,更好的设计选择是使用具有正确大小的varchar。
答案 3 :(得分:0)
我们应该始终使用 Varchar()来存储电话号码,而不是整数或bigint。