您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在SQL数据库中存储地址的最佳实践/标准

在SQL数据库中存储地址的最佳实践/标准

http://www.upu.int具有国际地址的格式标准。http://usps.com上的出版物28 具有美国格式标准。

USPS希望将以下未标点的地址部分串联在一起:

* house number
* predirectional (N, SE, etc)
* street
* suffix (AVE, BLVD, etc)
* postdirectional (SW, E, etc)
* unit (APT, STE, etc)
* apartment/suite number

例如:102 N MAIN ST SE APTB。

如果将整个地址行都保留在数据库中的单个字段中,则输入和编辑都很容易,但是搜索可能会更加困难(例如,在SOUTH EAST LANE是S EAST LN中的街道EAST还是LANE as在SE LANE ST?)。

如果您将地址解析为单独的字段,则搜索街道名称或公寓之类的组件会变得更加容易,但是您必须将所有内容附加在一起以进行输出,您需要CASS软件才能正确解析,并需要邮政信箱,乡村路线地址和APO / FPO地址具有特殊的解析。

在该位置具有多个地址的物理位置是一个多单元建筑物,在这种情况下,APT和STE等单元之后的字母/数字指定地址,或者是商业邮件接收机构(例如UPS商店)和一个投递箱/专用邮箱附加号码(例如100 MAIN ST STE B PMB 102),或者这是一家拥有一个USPS传递点的公司,并且在USPS传递后路由邮件(通常需要公司可能需要一个单独的mailstop字段,但USPS不需要在地址行上)。

具有多个实际地址的联系人通常是具有街道地址和邮政信箱的企业或个人。请注意,每个地址通常都有不同的邮政编码。

一项业务交易通常具有送货地址和账单地址(同样,具有不同的邮政编码),这是非常典型的。我保留的每个地址的信息是:

* name prefix (DR, MS, etc)
* first name and initial
* last name
* name suffix (III, PHD, etc)
* mail stop
* company name
* address (one line only per Pub 28 for USA)
* city
* state/province
* ZIP/postal code
* country

我通常会在人名和公司之间的某个地方打印邮件站点,因为该国家/地区包含州/邮编,该州/邮政编码包含城市,该城市包含的地址包含该公司,该公司包含一个包含该人的邮件站点。输入或编辑时,我使用CASS软件来验证和标准化地址。

SQLServer 2022/1/1 18:15:34 有446人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶