J'importe des formes polygonales dans une base de données PostGIS, en utilisant Python (GeoPandas, SQLAlchemy, GeoAlchemy2). J'ai suivi les instructions mentionnées here.PostGIS: Conversion de texte hexadécimal WKT/WKB/WKB en polygone
J'ai une base de données avec une table nommée maps_region
avec une colonne/champ appelé geom
.
Je peux obtenir le champ Polygone (nommé geom
) pour importer dans la table de base de données PostGIS au format texte (WKT, WKB et WKB Hex), mais, je suis incapable de convertir avec succès cette colonne de texte en un bon Format de polygone dans la base de données.
J'ai essayé d'importer avec le champ geom
dans plusieurs formats différents - au format WKT (Well-Known Text), au format WKB et WKB Hex - mais je n'ai pas pu convertir en Polygone à partir de l'un des trois formats.
Par exemple, j'importeraient des formes dans le champ geom
au format WKT, puis convertis au format WKB Hex, en utilisant la commande suivante, ce qui a bien fonctionné:
database=> UPDATE maps_region SET geom = ST_GeomFromText(geom, 4326);
UPDATE 28
Cependant, lorsque je tente alors convertir le champ geom
d'un format text
dans un type Polygon
, je reçois les erreurs suivantes:
database=> ALTER TABLE maps_region ALTER COLUMN geom TYPE Geometry(POLYGON, 4326);
ERROR: Geometry type (MultiPolygon) does not match column type (Polygon)
database=> ALTER TABLE maps_region ALTER COLUMN geom TYPE Geometry(MULTIPOLYGON, 4326);
ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)
J'ai essayé les deux sens: la conversion à Polygon, et la conversion à Mult iPolygon-- et ni travaillé. Au lieu de cela, les messages d'erreur ont été simplement inversés!
Toute aide serait grandement, grandement appréciée.
Merci d'avance!