23

随着短信和类似事物的时代,将电话号码存储在数据库中的好方法是什么?

在美国,短信是通过电话号码处理的,但在其他国家,我听说他们使用电子邮件地址,所以我想需要一种方法来区分使用手机号码作为地址的国家/地区。

加法:例如,美国人可能使用 432-342-3333 或 1-432-342-3333,而在英国他们可能使用 +44 800 400000 或者他们甚至可能忽略 44。44 和 1 使自动发送短信时的区别。但是,检查每个国家/地区的电话号码可能会很乏味。在这种情况下,您是拆分国家代码还是将其合并为一列并在那里处理?

4

3 回答 3

29

即使您出于以下原因使用数字电话号码,我也会主要使用一个文本字段或一系列文本字段。

  1. 电话号码具有很大范围的值,包括可能导致数字列丢失精度的分机号码。
  2. 失去电话号码的准确性是相当糟糕的。
  3. 没有合乎逻辑的理由要对电话号码执行数学运算(加法/乘法)。

此外,您可能希望指定如何使用这些数据。如果您正在计划一个自动消息服务,您将需要一系列中继代理来进行广播,因此您最好添加一个与信息相关的中继相关的标识符。那么您只需要担心中继代理是否可以理解文本字段中的内容。

于 2008-11-24T16:37:13.347 回答
15

通常作为文本,您不需要所有花哨的格式,除非您需要它来解析来自不同国家的数字,否则您无法区分。您以后可以随时添加格式。

不是数字!!!前导零可能有问题。

于 2008-11-24T16:36:39.853 回答
7

我不知道您是否阅读过这两个问题,但它们可能会对您有所帮助。

存储号码类型(固定电话、手机、传真)和/或可以在其上接收的消息(语音、文本、电子邮件)也许是明智之举。请注意,在美国,也可以通过电子邮件向手机发送短信,但我相信这取决于运营商。

于 2008-11-24T16:35:04.537 回答