我应该在数据库中保存掩码值吗?

时间:2013-10-10 19:53:28

标签: maskedinput

我正在开发一个保存电话号码的应用程序,电话号码的掩码是(99)9999-9999。

我应该将整个字符串保存在数据库中吗?即:

(99) 9999-9999

或仅仅是数据:

9999999999

并且只在UI中格式化它?

我正走向第二个,但我无法说明原因。我的coleague论点是第一个(带掩码的那个)会更容易,因为没有必要在不同的UI(报告,网页)中应用掩码。

1 个答案:

答案 0 :(得分:2)

单独的数据和表示逻辑 - 这是一种很好的做法。

我建议您只存储号码,因为号码是数据,格式不是(仅存储数据库中的数据)。

第二,也许在这一刻你有1种格式,但相信我 - 在某些时候你需要另一种格式然后你将不得不重新格式化(某种墨菲定律)

当然,出于性能原因,您可以缓存可视化演示文稿 - 为其创建其他字段并将其用于显示,在主“数据”字段更新时更新它