【问题标题】:Storing phone numbers in a SQL database在 SQL 数据库中存储电话号码
【发布时间】:2011-06-18 09:44:08
【问题描述】:

我有一张存储手机号码的表格

它存储
国家
网络
其余的

所以一个例子是移动的,或者是蒙面的

64 21 8229918 CC NN XXXXXXX

现在,

国家被称为国家是有意义的
网络被称为网络

但是你会怎么称呼剩下的呢?

我正在重新设计数据库,因此我希望它的名称尽可能准确。 我可以在驼峰式中使用多个单词。

有什么想法吗?

还有,

国家/地区代码只有数字,我相信最多 4 个?
那么我应该使用 int 类型吗?
同样适用于网络。

剩下的呢?

我不知道它会持续多久......

【问题讨论】:

  • 如何调用其余的“number_segment”:)

标签: mysql phone-number table-structure


【解决方案1】:

我会尽量保持简单。仅将国家代码和数字分开,并将它们都存储为文本。因为不同的国家/地区使用different numbering schemes,所以不可能弄清楚每个国家/地区的“网络”是什么(甚至可能意味着什么)。

因此,最好将国家/地区代码 存储在一个字段中,将电话号码 存储在另一个字段中,两者都是文本,没有格式或空格。您可能还想为“扩展名”分配另一个字段,但我不确定扩展名的使用或符号如何因国家/地区而异。您不能只使用整数,因为国家/地区代码和某些国家/地区的电话号码可以以 0 开头。

根据维基百科,最长的country code 是三个字符。所以你只需要三个数字。我个人会为编号本身分配大约 16 个字符,以确保完全涵盖每个编号方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-21
    • 2019-12-20
    • 2010-09-22
    • 2015-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多