SQL:在数据中存储格式

Man*_*ngo 6 normalization database-design

我一直教导将格式化数据存储在表格中是不正确的。例子包括:

+----------------+----+
| 数据 | 好的 |
+----------------+----+
| 0370101234 | ? |
+----------------+----+
| 03 7010 1234 | |
+----------------+----+
| (03) 7010 1234 | |
+----------------+----+

(为什么不支持表格?!)

数据是一个澳大利亚电话号码,通常有 10 位数字,包括区号。

包括格式间距或字符会引入歧义,因此更难排序或搜索。

问题是:标准或关系理论中有没有涵盖这个问题的内容?

编辑

这不是关于电话号码的问题。我用应该以最简单的形式存储的数据说明了一个点,即使它是用格式化字符显示的。

其他示例包括$显然从未与货币值一起存储的符号,以及有其自身问题的千位分隔符。

RLF*_*RLF 0

嗯,对于电话号码只需要数字值

您知道这一点是因为当您键入电话号码时,您不包含非数字字符。

使用诸如以下字符的格式+ ( ) - . x严格是为了帮助使用数字的人拥有有用的模式来帮助记住和输入数值。

号码格式可以减少输入电话号码时出错的频率。

因此,您问题的答案似乎取决于以下方面的不同需求:

  1. 电话交换机的需求
  2. 需要输入号码的人

企业、政府等领域的其他数字可能也有类似的特点,因为它们横跨电子和人类领域。

当然,到了这个时候,您还可以通过通常使用该MyContact@xxx.yyy格式的电话发送电子邮件。当然它们不是电话号码

如果您想为了一致性而格式化电话号码,您可能会发现这很有用:

/sf/ask/8649161/