最近,我们开始向我们的网络应用程序的用户展示过时的国家/地区列表的问题。
我们目前有几个数据库表来存储本地化的国家/地区名称及其区域(州)。然而,随着行星的发展,该列表不断演变,并且随着某些区域被删除,一些区域被合并而被证明是一种痛苦,现有数据需要不断更新。
在处理多地区国家/地区名单时,最佳做法是什么?
是否有地方或标准?我知道ISO 3166,但他们的列表并不完全是DB友好的...而且它没有完全本地化。
理想的解决方案只是让我们“同步”它?最好是多种语言。该解决方案最好是免费的或订阅的,具有改变的历史记录,以便我们可以更新我们的数据(aka tblAddress)
谢谢!
答案 0 :(得分:14)
geonames在这方面非常准确,并且会定期更新。
答案 1 :(得分:7)
没有这样的事情。这是一个政治问题,您只能在自己的应用程序环境中解决。决定使用ISO 3166可能是最容易防守的。我至少知道问题:
答案 2 :(得分:3)
ISO列表here对数据库友好,但它们只包含短名称和代码。
答案 3 :(得分:2)
This one看起来非常好:多种语言,更新选项,导入数据库无关的文件格式,国家/地区/城市信息以及您可能使用或不使用的其他一些功能。
如果只需要一台服务器,它就非常实惠。
答案 4 :(得分:2)
答案 5 :(得分:1)
好吧,等等,您是否只想要一份最新的国家/地区列表?或者您是否需要知道国家X已分为国家Y和国家Z?因为我不知道任何自动获取后者的方法。甚至ISO数据库的更新也以PDF格式分发(您可以自行实施更改)
答案 6 :(得分:1)
欧盟维护有关本地管理单位(LAU)的数据,这些数据可以downloaded作为多种语言的分层XLS文件。
答案 7 :(得分:1)
HY!你可以找到所有国家的免费转储及其各自的大陆https://gist.github.com/kamermans/1441495,它易于使用。只需下载转储和放大器。上传到您的数据库中。
答案 8 :(得分:0)
联合国统计司,Standard country or area codes for statistical use (M49)。
在左侧页面上查找“搜索和下载:完整视图”。这导致here。
按大陆、次大陆区域、最不发达国家等对国家进行分组。
如果您无法导入 excel 版本,请注意 csv 有未加引号的字段和一个国家名称中的逗号,这将破坏您的导入(“博内尔岛、圣尤斯特歇斯岛和萨巴岛”)。也许先在 LibreOffice 或其他任何地方打开它, 修复损坏的国家/地区名称并将其最右侧的其他列分流回原位。然后将所有单元格设置为文本类型,在另存为对话框中选中[编辑过滤器设置] [x] 的情况下另存为 csv,并确保设置了字符串分隔符到“,因为它应该是默认的。