如何将世界上所有国家/城市/州纳入我的数据库?

时间:2011-04-28 03:24:53

标签: database architecture geolocation gis

我有一个困难的架构和网络问题。我想为http://www.comehike.com

创建一个关于世界上每个城市徒步旅行的网页

我必须以某种方式导入世界上所有城市并按州建立它们,而国家又按国家构建。

我已经有一个国家列表,我手动添加到数据库中,然后添加了加利福尼亚州的所有城市(如果考虑小地方,还有300多个),并意识到我无法做到这一点手工准确地为世界上所有城市准备。

有没有办法以自动方式执行此操作?我从哪里获得可靠的数据?理想情况下我也会有他们的lat / lng。

3 个答案:

答案 0 :(得分:4)

您可以从GeoNames下载免费的地理数据 - 这是一个文本文件,可以从中轻松解析相关信息。如果免费数据不够可靠,无法满足您的需求,他们还会提供更高质量控制的验证数据,但需要付费。

答案 1 :(得分:0)

几个月前我回答了一个非常相似的问题。我认为我的回答对您有所帮助:City Country State Database

我有一个从USGS GNIS Server(美国)和美国NGA GNS服务器(非美国)编译的世界城市CSV数据集,我已将其置于公共领域。以下是布局的链接和元数据。

第1栏:ISO 3166-1 alpha-2国家代码。
第2栏:美国FIPS 5-2一级行政区划代码(例如州/省) 第3列:NGA GNS功能描述(DSG)代码 第4列:NGA GNS唯一特征标识符(UFI) 第5列:ISO 639-1 alpha-2/3代码,用于与功能名称对应的语言 第6列:与特征名称对应的语言脚本(例如拉丁语,阿拉伯语,中文等) 第7栏:功能名称 第8列:区域质心的纬度坐标。 第9列:区域质心的经度坐标。

http://www.opengeocode.org/download.php#cities

答案 2 :(得分:0)

我最近完成了同样的工作。我使用 ansi SQL ,以便任何关系数据库系统都可以使用脚本。

您可以在此处找到脚本:https://github.com/MehmetKaplan/SQL_for_Country_State_Cities

PS:我从中导出数据的原始脚本为here