PostGIS:将文本WKT/WKB/WKB Hex转换为多边形

2024-05-23 21:50:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Python(GeoPandas,SQLAlchemy,GeoAlchemy2)将多边形导入PostGIS数据库。我遵循了上面提到的here的说明。在

我有一个数据库,其中有一个名为maps_region的表和一个名为geom的列/字段。在

我能够获得多边形字段(名为geom)以文本格式(WKT、WKB和WKB Hex)导入PostGIS数据库表,但是,我无法成功地将此文本列转换为数据库中正确的多边形格式。在

我尝试了用geom字段以几种不同的格式导入--以众所周知的文本(WKT)格式、WKB格式和WKB十六进制格式--但无法从这三种格式中的任何一种转换为多边形。在

例如,我将形状作为WKT格式导入到geom字段中,然后使用以下命令转换为WKB Hex格式,效果很好:

database=> UPDATE maps_region SET geom = ST_GeomFromText(geom, 4326);
UPDATE 28

但是,当我试图将geom字段从text格式转换为Polygon类型时,我得到了以下错误:

^{pr2}$

我尝试了两种方法:转换为多边形和转换为多多边形,但都不起作用。相反,错误信息被颠倒了!在

如有任何帮助,我们将不胜感激。在

提前谢谢!在


Tags: 文本数据库sqlalchemy格式updategeoalchemy2多边形wkt