如何将2147483647更改为原始手机号码[关闭]
Posted
技术标签:
【中文标题】如何将2147483647更改为原始手机号码[关闭]【英文标题】:how to change 2147483647 as original mobile number [closed] 【发布时间】:2013-03-14 20:47:44 【问题描述】:在我的具有注册表的数据库中,用户可以在我们的项目中注册,我们能够插入所有值...对于具有手机号码的注册表单,因此在手机号码的数据库中,我将数据类型指定为 int(24),因此手机号码保存为 2147483647 .... 所以我改成 bigint(datatype) 然后现在我可以将手机号码保存为原始号码...这里的问题是之前更改数据类型的手机号码没有更改为原始号码我应该如何获得原始号码请给出一个想法或 senario 来做这个过程....我应该如何获得原始号码。 (2147483647转9999999999)...
【问题讨论】:
这真的不清楚。但听起来您使用的数据类型对于您的数据来说太小了。如果是这样,那么显然没有办法取回原始数据。 另外,请注意电话号码不是整数;您应该使用某种字符串类型来存储它们。 举个 Oli 评论的例子:0123123123
和 123123123
是不同的电话号码,但任何号码字段都会一视同仁。
【参考方案1】:
你不能。您没有将原始数据存储在任何地方,因此它会丢失。
【讨论】:
【参考方案2】:您无法恢复原始数据。
原因是有符号整数的最大值是2147483647
。即使您指定了INT(24)
,但这并不意味着您可以存储长度为24,因为最大允许值为2147483647
。 INT
声明中24
的含义是填充零的长度,并且仅当在列上启用ZEROFILL
时才适用。但是长度仍然不能达到24
个字符。
如果已将原始数据保存为9152667253
,则会被截断为最大值2147483647
。
【讨论】:
以上是关于如何将2147483647更改为原始手机号码[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
MongoDB如何将数组中的字段类型从字符串更改为数组并保持原始值