<分区>
我所说的地址仅指正常地址,如国家、州、城市、地区、街道、建筑物,地址可以在其他表(如人员)中有效引用,以便我们可以选择同一城市的人员等等?谢谢。
<分区>
我所说的地址仅指正常地址,如国家、州、城市、地区、街道、建筑物,地址可以在其他表(如人员)中有效引用,以便我们可以选择同一城市的人员等等?谢谢。
最佳答案
根据我的经验,您需要国家、州、城市、 zip 、地址。
只有前三/四项方便过滤用户。枚举字段非常适合前两者。接下来的两个最好使用 API 进行验证——这将使您免于维护有效值列表的麻烦。
我还没有遇到任何系统(虽然我假设邮局需要它,连同地理定位)需要将地址部分分块到单独的数据片段中以进行更精确的过滤——另外,每个用户后者有自己的进入方式。
请记住,有些国家/地区没有州;其他人没有邮政编码;并且邮政编码格式因国家/地区而异。
另外请记住,即使一个用户在您的系统中可以有多个地址,您最不想做的就是将多个用户绑定(bind)到同一个 address_id。它们通常更适合作为用户(或他们的公司)的详细信息,或者作为后者的 1-n 相关详细信息;从来没有。否则,UI 问题会迅速蔓延,并且总会有人错误地编辑用户 B 的地址,因为后者恰好与用户 A 共享了该地址。
关于database - 如何优雅地设计表示 ADDRESS 的数据库模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6105713/