Pages: 1
- Sujet précédent - QGIS : Plugin SPIT - Erreur import shapefile Multipolygon - Sujet suivant
#1 Fri 04 April 2014 10:06
- LuSimeon
- Juste Inscrit !
- Date d'inscription: 1 Apr 2014
- Messages: 9
QGIS : Plugin SPIT - Erreur import shapefile Multipolygon
Bonjour,
Après de nombreuses recherches, je n'ai pas réussi à régler mon problème et pourtant c'est apparemment une erreur fréquente qui vient de PostGIS :
J'essaye via le plugin SPIT de QGIS d'importer des shapefiles dans ma base de donnée se trouvant sur PostGIS, quand ces shapefiles sont de types Polygon cela fonctionne très bien mais quand ceux-ci sont de types Multipolygon, une erreur s'affiche et le fichier n'est pas ajouter à la base de donnée.
L'erreur en question :
ERREUR: Geometry type (Polygon) does not match column type (MultiPolygon)
Je suis débutant sur QGIS/PostGIS, et j'ai donc du mal à comprendre les réponses des autres sujets qui en parlent.
Pouvez-vous expliquer avec des mots simples s'il vous plait.
PS : J'ai déja essayé de changer le type de géométrie du shapefile via la colonne Classe de donnée de SPIT mais cela ne fonctionne pas.
Merci d'avance.
Hors ligne
#2 Fri 04 April 2014 11:48
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3945
Re: QGIS : Plugin SPIT - Erreur import shapefile Multipolygon
Bonjour,
mes premières tentatives d'import via SPIT ayant échoué, je me suis depuis rabattu sur d'autres outils notamment, pour rester dans des solutions interfacées:
- dans PGAdmin, menu Plugins > Postgis shapefile and DBF Loader évoqué icipar exemple
- non utilisé, mais dans QGIS, menu Base de Données, DBManager offre la possibilité d'importer des shapefiles dans PostGIS. Il me semble avoir, il y a un moment, vu des discussions qui laissaient penser que DBManager était destiné à unifier/remplacer tous les outils orientés QGIS<--> PostGIS et donc, intégrerait les fonctionnalités de SPIT. Essayez donc aussi DBManager.
Au delà de ce problème, lors de la création de nouvelles données dans une table postgis, cette erreur peut revenir souvent, du fait que la géométrie de la table est définie en polygon ou multipolygon et que ce que l'on veut y mettre n'est pas forcément ça. Pour contourner ça, dans PGAdmin, j'ai décidé, pour le champ géométrique de mes tables postgis de n'utiliser que le type geometry, c'est-à-dire qu'au lieu, par ex, de
Code:
geom geometry ('MULTIPOLYGON',2154)
qui est très souvent généré par l'utilitaire "shapefile loader" de pagAdmin, je remplace la définition de ma table avec
Code:
alter matable alter column geom type geometry, add CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) = ANY (ARRAY['MULTIPOLYGON'::text, 'POLYGON'::text])), --pour n'y accepter que polygone et multipolygone add CONSTRAINT enforce_srid CHECK (st_srid(geom) = 2154) -- pour rester en L93
Par contre, il semble que mélanger polygon et multipolygon ne permette pas non plus d'utiliser de façon sereine certaines fonctions de PostGIS mais ça, c'est une autre histoire...
Hors ligne
#3 Fri 04 April 2014 14:07
Re: QGIS : Plugin SPIT - Erreur import shapefile Multipolygon
Bonjour
SPIT est considéré comme abandonné par les développeurs, puisque DBmanager permet de charger une base postgis ou spatialite par simple glisser - déposer entre le browser et db manager. Cette fonctionnalité est très pratique, mais sous documentée..
Régis
Hors ligne
#4 Fri 04 April 2014 15:06
- LuSimeon
- Juste Inscrit !
- Date d'inscription: 1 Apr 2014
- Messages: 9
Re: QGIS : Plugin SPIT - Erreur import shapefile Multipolygon
Effectivement cela fonctionne beaucoup mieux avec les bons outils.
DBManager fait très bien ce que je souhaite, je vais donc l'utiliser dorénavant.
Merci pour vos explications et conseils.
Je garde de coté le morceau de code du champ géométrique, si jamais une erreur se présente.
Merci encore, bonne journée.
Hors ligne
Pages: 1
- Sujet précédent - QGIS : Plugin SPIT - Erreur import shapefile Multipolygon - Sujet suivant