当前位置: 首页 > 面试题库 >

如何在MySQL数据库上存储电话号码?[重复]

申颖逸
2023-03-14
问题内容

这个问题已经在这里有了答案

8年前关闭。

可能重复:
telefne号和地址的mysql数据类型

关于将电话号码存储在数据库中的最佳做法有何建议?考虑一个美国电话号码:

  • 555 555 1212
  • 555-555-1212
  • (555)555 1212
  • 5555551212
  • 1-555-555-1212
  • 1(555)555-1212
  • 等等 …

我应该删除格式并仅存储数字吗?我应该只使用一个字段-还是将其分为:国家代码,区号,电话号码等?有什么建议吗?


问题答案:
  • 全部作为varchar(它们不是数字,而是“数字集合”)
  • 国家+地区+数字
  • 并非所有国家都有区号(例如我所在的马耳他)
  • 一些国家/地区在拨打内部电话时将区号中的前导零丢弃(例如,英国)
  • 格式化客户端代码


 类似资料:
  • 我想从用户的电话通讯录中导入所有的联系人号码,并将其存储在数据库中,但由于我想稍后对其进行一些处理,所有的电话号码都应该具有统一的格式。 我在互联网上做了一些研究,发现电话号码有三种主要格式:(来源: googlei18n/libphonenumber) 国际 然后我导出并提取我的电话联系号码,但我知道有很多来自不同国家和运营商的不同格式的号码。 这里有一些例子: 基于谷歌的图书馆,如果你想把任何

  • 问题内容: 我想将应用程序的版本号存储在MySQL数据库中,例如: 我应该使用哪种数据类型。 问题答案: 您有2个选择: 使用varchar 使用三个数字字段,主要,次要,补丁 同时使用。 每个选项都有其优点和缺点。 选项1只是一个字段,因此很容易获得版本。但这不一定是可排序的,因为从字典上讲2.0.0将高于10.0.0。 选项2可以很容易地进行排序,但是您必须获得三个字段。 选项3可以使用以下视

  • 问题内容: 使用Java 对象,最简单的方法是将它们存储为MySql 对象(在UTC中)。切换到这种方法将不再起作用,因为MySQL 无法提供存储纳秒的精度。仅将它们截断可能会导致新创建的对象与从数据库读取的对象之间的意外比较结果。 时间戳不适合我作为一个优雅的解决方案:手动编写选择查询变得更加困难,因为必须将时间戳转换到任何地方以使其可读,并且与值甚至值相比,Java的处理有些笨拙。 去这里最好

  • 问题内容: 我要输入电话号码,包括国家代码,分机号 如果tel_number大于15位,可以使用哪种数据类型,最好使用? 例如,如果我有加拿大的国家代码,则可以使用+2或002。哪个更适合处理? 谢谢你的建议。 问题答案: 好吧,我个人不使用数字数据类型来存储电话号码或相关信息。 您如何存储说001234567的数字?最终结果为1234567,丢失了前导零。 当然,您始终可以将其左移,但前提是您确

  • 1366字符串值不正确:“\XF0\X9F\X98\X83\XF0\X9F..."第1行的“comment”列

  • 问题内容: 我想在HTML文档中将电话号码标记为可调用链接。我已经读过微格式方法,并且我知道该方案是标准的,但实际上没有任何实现。 Skype的定义,因为据我所知,和,后者已经获得了一定的知名度。我认为,其他公司有其他计划,也有可能参与其中。 标记电话号码的最佳做法是什么,以便使尽可能多的使用VoIP软件的人可以单击链接来拨打电话? 额外的问题:有人知道紧急电话的并发症吗,例如美国的911或德国的