2010-08-17 49 views

回答

2

您可以使用ogr2ogr从shapefile转换为GML(或许多其他formats),然后使用SQL Server的GeomFromGML导入。您需要为shapefile中的每个特征调用GeomFromGML,但这是一个相对容易编写的程序。

0

我制作了一个应用程序,用于将shapefile导入SQL Server。它主要是为了满足我的需求,但我有一些空闲时间,所以我为你做了一个安装程序。

一些不错的东西,你可以用它做:

  1. 选择输入shape文件的编码
  2. 重命名/重映射目标表列名
  3. 选择目标表名
  4. 设置主键目的地表

它有一个用户界面,你可以免费下载它。

更多细节可以在我的博客上找到,这里的链接:Import shapefiles into SQL Server

1

更新:我决定我只想指出人们对官方Github上回购来代替:https://github.com/zer0infinity/OGR2GUI

这[ogr2ogr叉]工具将尝试解析输入文件的内容(在我的情况下,它是一个shapefile)并将其输出为一堆不同的格式(在我的情况下,我需要它作为CSV,但您甚至可以将您的文件导出为SQLite文件)。不幸的是,它不会直接执行SQL,但可以从SQLite查看器(例如SQLite Browser)执行转储并将其导入到MS SQL中。转换到SQLite时我注意到了一些低效率(我丢失了一些属性/表)。我也尝试MobileMapper Office(MMO)(运气好些)导出为CSV,它确实保留了大量数据,但是您需要编写一个脚本来将数据导入到SQL中。如果你要走这条路线,请告诉我,我目前正在编写一个VBA脚本来处理从MMO导出的数据。

如果您希望将其构建到应用程序中(某种脚本),您可能会尝试使用ogog2ogr,但您永远不知道数据的外观。文档这里找到http://www.gdal.org/ogr2ogr.html

原来的答复:有时保存自己,只是使用这个惊人的工具:http://ogr2gui.ca/

它是基于关闭ogr2ogr,但有一个漂亮的GUI。

+0

虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供供参考的链接。如果链接页面更改,则仅链接答案可能会失效。 - [来自评论](/ review/low-quality-posts/13234345) – Magisch 2016-08-05 07:28:39

+0

你说得对。刚编辑我的答案以提供更多信息。谢谢。 – megamaiku 2016-08-05 18:45:24

相关问题