(解答)如何从 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 在这段引文中强调了 BCP 方法的原因:

值得指出的是,WKB是一种有损的格式,因为它没有存储SRID。因此,如果您提取并插入WKB,则必须自己携带SRID。我们的内部二进制格式确实存储了SRID,因此这样的BCP应该减少麻烦。

HTH。

编辑:将整个帖子问题替换为社区维基..这篇文章就是一个答案。

有帮助吗?

解决方案

我最初删除了开头帖子中的问题,用答案替换它(在 08 年底)......并将其设为维基。

嗯是的 ..OP就是答案:P

其他提示

批量插入错误!!!MSG 6522,级别16,状态1,第1行1 A .NET框架错误在执行用户定义的例程或汇总“几何”期间发生:

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top