(ANSWER) 如何从 Microsoft Sql Server 2008 中导出一些地理数据。
您需要使用命令行参数 BCP 将原始(本机)格式的数据转储到二进制文件中。然后在另一台服务器上,您可以将此二进制数据批量插入到相同结构的表中。
这是一些代码。
出口
Command Line: bcp "geodata.dbo.GeographyData" out "C:\GeoData.bin" -T -n -S <servername>
笔记
- 这使用受信任的连接
- 使用 bcp /? 如果您需要成为铁杆,请为您的出口选项提供更多帮助。
导入数据
T-SQL: bulk insert GeographyData from 'C:\GeoData.bin' with (dataFileType='Native')
我通过空间大师Isaac Kunen并在Kent Tegels的帮助下了解了这一切,在这里的讨论线程中。
Isaac 在这段引文中强调了 BCP 方法的原因:
值得指出的是,WKB 是一种有损格式,因为它不存储 SRID。因此,如果您提取并插入 WKB,您必须自己携带 SRID。我们的内部二进制格式确实存储了 SRID,所以像这样的 BCP 应该不那么麻烦。
HTH。
编辑:将整个帖子问题替换为社区 wiki .. 这个帖子是一个答案。