ich möchte Shapefiles über das SPIT-Plugin in QGIS in meine PostGIS-DB hinzufügen. Soweit funktioniert das auch problemlos - ich habe schon Polygone, Linien, Punkte importiert und alles funktioniert, wie es soll. Sobald das Shapfile jedoch ein Multipolygon (oder auch MULTIline,…) ist, bekomme ich folgenden Fehler ausgegeben:
ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)
Erster Versuch war es nun bei “Feature Class” im SPIT statt “MULTIPOLYGON” “POLYGON” zu verwenden - ohne Erfolg. Da ich im Internet sowohl die Aussage gefunden habe es könnte an QGIS liegen, als auch die, es könnte an PostGIS liegen, wollte ich einmal fragen, ob hier jemand einen Lösungsansatz hat.
Hallo Maxl,
in der QGIS Menüleiste unter Vektor > Geometrie-Werkzeuge > Mehr- zu einteilig kannst du deinen Multipolygon- in einen Polygon-Datensatz umwandeln. Vorausgesetzt das ftools-Plugin ist bei dir installiert, ist aber eigentlich Standard in QGIS. Das Ergebnis lässt sich mit dem SPIT-Werkzeug in die PostGIS DB importieren.
ja, das habe ich bereits auch schon gemacht und für möglich befunden. Allerdings bekommt man es danach eben nicht wieder als Multipolygon in der PostGIS-DB umgewandelt und das kann bei manchen Multipolygonen dann schon nervig sein, wenn man da auf einmal ein Land zig mal hat oder so.
Danke trotzdem.
habe es jetzt über den DB Manager probiert, aber auch da erhalte ich die Fehlermeldung:
Error 7
Feature write errors:
Creation error for features from #0 to #56. Provider errors was:
PostGIS error while adding features: FEHLER: Geometry type (MultiPolygon) does not match column type (Polygon)
so wie ich das sehe versuchst Du, ein MULTIPOLYGON in eine Spalte einzufügen, die einen anderen Datentyp (POLYGON) hat. Hast Du die anderen Daten in eine Spalte (GEOMETRYCOLLECTION) oder in Spalten mit unterschiedlichen Datentypen exportiert?
Versuch doch mal, in Deiner DB eine Spalte des Typs MULTIPOLYGON anzulegen und die Daten da rein zu exportieren. Mit Daten des Typs GEOMETRYCOLLECTION hat QGIS auch bei mir Probleme - kann solche Spalten zwar in QGIS anlegen und über SQL- Befehle mit MULTIPOLYGONEN und POINTS füllen, kriege die Daten aber nicht in QGIS angezeigt. Ob das an den MULTIPOLYGONEN hängt, hab ich noch nicht ausprobiert, weil die bei mir eh unbedingt notwendig sind.
Mit shp2pgsql kannst du einstellen, das die Polygone als singlegeometries gelesen werden. Klappt aber nicht immer WIMRE. Andernfall die Geometriespalte halt aks Multipygon anlegen. Mit Collections arbeite ich eigentlich eher nicht als Datentyp, eben weils immer und überall aneckt.