什么是可能的最长的全球电话号码,我应该考虑在SQL VARCHAR(长度)的电话什么是可能的最长的全

2019-05-13 09:50发布

什么是可能的最长的全球电话号码,我应该在SQL考虑varchar(length)的电话。

注意事项:

  • +国家代码
  • (),用于区号
  • X + 6个号码分机延伸(以便使它8 {空间})
  • 组之间的空间(即,在美国电话+ X XXX XXX XXXX = 3个空格)
  • 这里就是我需要你们的帮助,我希望它是全世界

考虑到我的特殊情况下,现在,我不需要卡等号码以国家代码,并与扩展,没有传真/电话等意见结束,也没有电话卡的东西需要。

Answer 1:

那么考虑有一个varchar(30)和一个varchar(100),如果你只是存储各20个字符之间没有差别的开销,宁可谨慎的一边,只是使它50。



Answer 2:

假设你没有保存的东西,如“+”,“()”,“ - ”,空格,什么具备的,你要跟(你为什么要,他们是会变化基于当地的风俗习惯和网络分布表象关注反正),在ITU-T建议E.164国际电话网络(其中大多数国家的网络经由连接)指定整个号码(包括国家代码,但不包括前缀,如国际长途电话前缀必要拨出,从国家而异,也包括后缀,诸如PBX分机号码)至多为15个字符

呼叫前缀取决于主叫,而不是被叫,因此不应该(在许多情况下),存储与电话号码。 如果数据库中存储的个人地址簿中的数据(在这种情况下存储的国际电话前缀是有道理的),你必须处理(最长前缀国际根据维基百科 )目前5位数字,在芬兰。

至于后缀,一些PBX的支持多达11个扩展(再次, 根据维基百科 )。 由于PBX分机号码是不同的拨号计划的一部分(PBX的来自电话公司的交换机分开),分机号码必须从电话号码区分,无论是与一个分隔符或将它们存储在不同的列。



Answer 3:

在GSM规范3GPP TS 11.11,有在MSISDN EF(6F40)关于“拨叫号码”划出10个字节。 由于这是一个电话号码的GSM表示,它的用法是半字节交换,(而且总是有括号的可能性)数据的22个字符应该是充足的。

根据我的经验,只有一个开/关括号的情况下,这是我对上面的推理。



Answer 4:

这是一个有点差,我使用电话卡拨打国际长途电话,所以在美国的帐户+#它的本地电话号码(6位数字)+引脚(4位)+“暂停” +您上述的内容。

我怀疑有可能是其他情况



文章来源: What's the longest possible worldwide phone number I should consider in SQL varchar(length) for phone