Mysql的例外

时间:2015-05-16 16:14:07

标签: java mysql

我想插入手机号码。注册时用户和我已经将整数的长度扩展到255,但我得到了这个例外。有人可以解决这个问题吗?

  com.mysql.jdbc.MysqlDataTruncation: Data truncation:
    Out of range value adjusted for column 'mobno' at row 1

1 个答案:

答案 0 :(得分:0)

数字世界中的一切都是数字。并不是你不能这样做。这样做会让事情变得毫无意义。

除了不应随意解除的+和前导0问题之外,对电话号码执行的两个主要操作是验证并以标准格式将它们呈现给用户。使用字符串更容易做到这两点。即使您使用数字进行此工作,您所获得的只是以可读代码为代价的数据微压缩。

varchar是如何在mySQL中执行此操作的。您不需要提前知道电话号码的长度。

另请注意,相同的电话号码从不同的角度以不同的形式存在。在某些地方,可以省略国家代码或区号。在单独的字段中询问这些内容,输入将更加普遍有用。

格式化信息()-.等,在存储时应标准化或删除,并在显示时重新应用,以确保存储独立于介绍

虽然您声称自己现在没有使用+并领先0,但请考虑基于数字的设计在未来添加它们的难度。

请参阅MySQL - how to store phone numbers?