【发布时间】:2018-08-06 16:08:11
【问题描述】:
在数据库中保存地址的最佳数据模型设计是什么,一种设计如下:
- 表
Countries - 表
Provinces(转至Countries) - 表
Cities(转至Provinces) - 桌子
Addresses(转至Cities),大街栏目 - 表
Customer - 表
CustomerAddresses(fk 到Customer和fk 到Addresses)
但是这种设计的问题是,有些客户的地址没有城市,只指定国家,或者为一个客户指定城市,但没有指定省和国家...
解决这个问题的最佳设计是什么?
【问题讨论】:
-
当你考虑这个问题时,想想你需要如何处理这些数据。面向外部的 UI 将提供什么?内部用户界面呢?您是否需要通过 NCOA(或任何有问题的国家的类似数据库)运行这些地址?根据您现在设置的清洁程度以及数据的清洁程度,这可能会影响群发邮件的成本和折扣。简而言之,您的架构应该围绕预期的未来用途构建。 (不过,我会考虑添加一个邮政编码字段;对于美国,zip+4 可以带来不同的折扣。)
标签: sql-server database database-design entity-relationship