我有一个需要升级的旧应用程序。现在不是一切吗?
现有的数据库模式由预定义的字段组成,如电话、传真、电子邮件。显然,随着过去 5-7 年(或更长,取决于您所在的国家/地区)的社会爆炸式增长,最终用户需要更多地控制以他们认为合适的方式创建联系人卡片,而不仅仅是我认为可能有用的方式。
我在这里关注“数字”地址。即一种线型地址。phone=ccc ccc ccc ccc 等 由于在这种情况下,物理地址在要求方面是相当标准的,因此用户将不得不使用给定的内容(位置、邮政、交付)以保持范围可管理。
所以我想知道存储数字信息的最佳实践格式是什么。在我看来,我有两个选择:
- 一个简单的 4 字段表(ContactId、AddressTypeId、Address、FormatterId)
1000, "电话", "ccc ccc ccc ccc", phoneformatter
1000, "facebook", "myfacebook", facebookformatter
然后它将在需要的任何地方加入。不过,该表会变得很大,并且我怀疑连接性能会随着时间的推移而下降。
- 读取后需要额外处理的 json blob(ContactId,地址)
1000,{{“电话”:“ccc ccc ccc ccc”},{“facebook”:“myfacebook”}}
或者是其他东西。
此数据库供客户在特定国家/地区使用,客户仅在国内进行交易,客户群范围为 3000-12000 个帐户,然后每个帐户有很多联系人 - 在当前系统中平均约为 10 个。
我主要关心的是用户的灵活性,但性能是其中的一个关键考虑因素。所以我不知道,只是做任何事情,然后扔一堆硬件;)
应用程序在 C# 中,如果这对后查询处理有任何影响。