【问题标题】:How to insert SQL Server geometry data to postgis geometry data type column如何将 SQL Server 几何数据插入到 postgis 几何数据类型列
【发布时间】:2021-05-30 15:40:11
【问题描述】:

我们的 SQL Server 中有 geometry 数据类型的数据。

什么时候做

select shape 
from boundary_polygon

我得到这个结果:

我已从此处显示的表中从 SQL Server 导出数据。如何将相同的数据导入数据类型为 geometry 的 postgres,因为下面是表结构。 shape列的数据是16进制的,如何导入?

create table boundary_polygon(id int, shape geometry)

【问题讨论】:

    标签: sql postgresql postgis


    【解决方案1】:

    sql server 中的geometry 是 CLR 类型序列化格式的 blob。

    Microsoft SQL Server CLR Types Serialization Formats了解更多信息

    而 postgis 使用 WKB(众所周知的二进制)作为它的几何数据类型。

    在 sql server 中,您可以使用 STAsText() 方法将该格式转换为 WKT(众所周知的文本)。 阅读更多关于它的信息here

    所以将 sql server 中的数据转换为 KWT:

    select shape.STAsText() 
    from boundary_polygon
    

    现在您可以轻松地将它们插入到 postgis 几何中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-10-05
      • 2021-11-20
      • 2013-01-19
      • 1970-01-01
      • 2020-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多