【问题标题】:How to insert polygon into database with PostGIS extension如何使用 PostGIS 扩展将多边形插入数据库
【发布时间】:2021-01-31 20:24:20
【问题描述】:

我有一个表格,其中包含以这种方式创建的字段:

CREATE TABLE buildings(id SERIAL PRIMARY KEY, geom GEOMETRY, name VARCHAR(30));

我想用以下坐标将简单的 2D 建筑插入其中 8 4, 10.5 4, 10.5 1.5, 8 1.5

INSERT INTO buildings(id, geom, name)
VALUES
(1, ST_GeomFromText('POLYGON(8 4, 10.5 4, 10.5 1.5, 8 1.5)'), 'BuildingA');

由于某种原因,我得到一个错误

ERROR:  parse error - invalid geometry
HINT:  "POLYGON(8 4" <-- parse error at position 11 within geometry

如何将该多边形插入表格中?

【问题讨论】:

    标签: sql postgresql postgis psql


    【解决方案1】:

    ST_GeomFromText 将 WKT 作为其参数。如果您查看the WKT format,您会发现您的多边形需要另一对括号。您还希望多边形中的最后一个点与第一个点匹配。

    INSERT INTO buildings(id, geom, name)
    VALUES
    (1, ST_GeomFromText('POLYGON((8 4, 10.5 4, 10.5 1.5, 8 1.5, 8 4))'), 'BuildingA');
    

    【讨论】:

      猜你喜欢
      • 2023-03-06
      • 2014-04-20
      • 2017-01-12
      • 2018-05-05
      • 2016-04-11
      • 2011-11-27
      • 2014-05-03
      • 2017-01-29
      • 1970-01-01
      相关资源
      最近更新 更多