gpt4 book ai didi

asp.net - 城市 zip 和州表的最佳数据库设计

转载 作者:太空狗 更新时间:2023-10-30 01:54:25 28 4
gpt4 key购买 nike

我的应用程序需要引用地址。街道信息将与我的主要对象一起存储,但其余的需要单独存储以减少冗余。我应该如何存储/检索邮政编码、城市和州?这是我的一些想法。

单表解决方案(不能做关系)

[地点]位置IDlocationParent(FK 代表 locationID - 0 代表状态条目)位置名称(城市,州)位置ZIP


两个表(有关系、FK 约束、ref 完整性)

[状态]状态ID州名

[城市]城市IDstateID(state.stateID 的 FK)城市名邮政编码


三个表

[状态]状态ID州名

[城市]城市IDstateID(state.stateID 的 FK)城市名

[压缩]邮政编码cityID(city.cityID 的 FK) zip 名称


然后我读入邮政编码及其分配方式。它们与城市没有特别的关系。有些城市有不止一个邮政编码(好吧仍然有效),但有些邮政编码在不止一个城市(哦,快点),还有一些其他邮政编码(很少)在多个州!此外,有些 ZIP 甚至与它们所属的地址根本不处于同一状态。似乎 ZIP 是为了识别运营商路线而制作的,一些偏远地区最好由邻近城市或州的邮局提供服务。

有没有人知道一个好的(不完美的)解决方案考虑到这一点,以尽量减少数据库增长时的差异?

最佳答案

USPS 每年都会发布一些数据库(只有一张表),其中包含邮政编码、州和县以及州/县代码。我会调查一下。我有一份(过时的)副本。架构非常简单:

  
   ZIPCODE nvarchar(5) not nullCITY nvarchar(50) nullSTATE nvarchar(2) nullSTATECODE nvarchar(50) nullCOUNTY nvarchar(50) nullCOUNTYCODE nvarchar(50) null
  
(见下文)

编辑:此外,我允许您的用户添加新的邮政编码(城市和县等),因为邮政编码一直在添加..

http://www.usps.com/ncsc/addressinfo/addressinfomenu.htm

编辑:其实我想我错了。我没有他们数据库的正式副本。我下载了他们的一个示例文件,他们的模式似乎很复杂。

关于asp.net - 城市 zip 和州表的最佳数据库设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2007447/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com