#1 Tue 26 March 2013 11:39
- ecran64
- Participant occasionnel
- Date d'inscription: 18 Apr 2012
- Messages: 49
PostGIS: Enregistrer ses résultats en Shapefile
Bonjour,
J'utilise depuis peu PostGis afin de faciliter des traitements de fichiers relativement gros. J'arrive à plus ou moins faire ce que je veux... maintenant, j'aimerais exporter certains de mes résultats directement en shapfile.
J'aimerais si possible éviter de passer par QGis (tout simplement pour pouvoir répeter l'exécution plusieurs fois).
J'ai parcourus certains forum qui parlent de pgsql2shp. J'ai essayé à "l'état brut" dans PostGis, mais ça me mets des messages d'errurs (ERREUR: erreur de syntaxe sur ou près de « pgsql2shp »), comme si la commande n'était pas reconnue...
Du coup, est ce qu'il y a une étape à faire avant, est ce qu'il faut installer quelque chose?
ça parait certainement bête comme question, mais ça fait pas mal de temps que je cherche et je ne trouve rien de simple, ça parait évident à tout le monde d'utiliser pgsql2shp
A+
Hors ligne
#2 Tue 26 March 2013 12:08
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1160
Re: PostGIS: Enregistrer ses résultats en Shapefile
Salut,
pgsql2shp est un exécutable et non une commande sql. Tu dois donc l'utiliser par exemple dans un shell (ligne de commande).
Plus d'infos par là : http://manpages.ubuntu.com/manpages/nat … shp.1.html
Hors ligne
#3 Tue 26 March 2013 12:13
- ecran64
- Participant occasionnel
- Date d'inscription: 18 Apr 2012
- Messages: 49
Re: PostGIS: Enregistrer ses résultats en Shapefile
Merci tumasgiu pour la précision, j'étais déjà tombé sur ce lien, mais j'ai l'impression que c'est surtout destiné à Ubuntu, malheureusement, je suis sur un poste Windows! Est ce que ça fonctionne sous windows quand même?
Hors ligne
#4 Tue 26 March 2013 12:59
Re: PostGIS: Enregistrer ses résultats en Shapefile
Bonjour,
Oui la commande fonctionne sous Windows mais utiliser une console DOS n'est pas aussi simple et efficace que sous Linux/Ubuntu
Tu peux lancer ceci dans la console dos :
Code:
C:/Program Files/Postgresql/9.1/bin/pgsql2shp.exe --help
Attention : le chemin sera probablement différent (j'ai fais ca de tête).
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#5 Tue 26 March 2013 13:21
- ecran64
- Participant occasionnel
- Date d'inscription: 18 Apr 2012
- Messages: 49
Re: PostGIS: Enregistrer ses résultats en Shapefile
Ok, merci Yves.
Et il n'existe pas une autre méthode, d'ajouter quelque chose de similaire à un export .csv?
Hors ligne
#6 Tue 26 March 2013 13:32
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: PostGIS: Enregistrer ses résultats en Shapefile
Bonjour,
Vous voulez exporter une table/requete en CSV ?
La commande COPY TO permet de faire ca (http://www.postgresql.org/docs/9.1/static/sql-copy.html)
Nicolas
Hors ligne
#7 Tue 26 March 2013 13:34
- ecran64
- Participant occasionnel
- Date d'inscription: 18 Apr 2012
- Messages: 49
Re: PostGIS: Enregistrer ses résultats en Shapefile
Pardon, je me suis peut-être mal exprimé, mais il n'existe pas un moyen directement dans PostGis d'obtenir le résultat d'une requète sous forme de shapefile? En gros, de la même manière que l'on peut exporter en CSV en utilisant COPY TO par exemple?
Hors ligne
#8 Tue 26 March 2013 13:39
Re: PostGIS: Enregistrer ses résultats en Shapefile
Bonjour,
Effectivement c'est plus claire maintenant
Non pas à ma connaissance
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#9 Tue 26 March 2013 13:47
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: PostGIS: Enregistrer ses résultats en Shapefile
Les nouvelles fonctionnalités de PG permettent de développer de quoi accèder a des fichiers par SQL (http://www.postgresql.org/docs/9.1/stat … apper.html) , mais je ne crois pas qu'il existe un Foreign Data Wrapper pour Shapefile.
Sinon, OGR permet de faire un peu de SQL et d'ecrire dans bcp de formats SIG.
Comme OGR dispose de GEOS, on peut faire des choses puissantes et proches de PostGIS.
Sinon, vraiment tiré par les cheveux:
Ecrire une procédure en Python et profiter d'un paquet Python pour ecrire le shape ou appeler pgsql2shp.
Que devez-vous faire avec vos données ?
Nicolas
Hors ligne
#10 Tue 26 March 2013 14:20
- ecran64
- Participant occasionnel
- Date d'inscription: 18 Apr 2012
- Messages: 49
Re: PostGIS: Enregistrer ses résultats en Shapefile
Ok, en fait, j'ai installé la dernière version de l'OpenGeo Suite et je fais quelques petits traitement avec QGis, mais là, ce sera pour faire des traitements entre des distributions d'espères, des milieux etc... du coup, en SQL, j'ai réussit à faire mon traitement, que jusqu'à maintenant j'esportais en Csv. Mais là, la personne aimerait avoir un shapefile différent pour chaque espèce (où l'on retrouve les polygones résultant de mon traitement), sachant que l'on a plusieurs centaines d'espèces, et que l'on aimerait que la commande puisse être utiliser par d'autres personnes, pas forcément expertes en commande... Après, je ne suis pas forcément expert en python non plus, j'arrive à bidouiller quelques commandes trouvées sur internet et les adapter à mes besoins, mais ça en reste là.
Hors ligne
#11 Thu 04 April 2013 08:57
- yasmine07
- Participant occasionnel
- Date d'inscription: 4 Mar 2013
- Messages: 21
Re: PostGIS: Enregistrer ses résultats en Shapefile
Bonjour,
Je ne suis pas vraiment une pro de postgis mais j'ai eu besoin de générer des shape file résultats de mes requêtes et j'ai essayé cette méthode et ça marche sur la majorité de mes requêtes:
Sut FWtools tu écris :
"ogr2ogr -f "ESRI Shapefile" c:\chemin\nom_fichier.shp PG:"host=localhost user=nom_user dbname=nom_db" -sql "ta requete avec au plus une colonne de type geometry"
Il paraît qu'avec Gdal, au lieu de FWtools c mieux mais bon j'ai pas essayé.
J'espère que ça réponds à ta question.
Bon courage.
Hors ligne
#12 Thu 04 April 2013 10:11
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: PostGIS: Enregistrer ses résultats en Shapefile
Bonjour,
Il paraît qu'avec Gdal, au lieu de FWtools c mieux mais bon j'ai pas essayé.
J'espère que ça réponds à ta question.
Bon courage.
Bonjour,
Une petite précision:
FWTools est en fait une livraison de GDAL/OGR (et d'autres outils comme OpenEV), packagée par l'auteur de GDAL, Franck Warmerdam (FW)
la commande indiquée, ogr2ogr, est la bonne commande. C'est un des outils de OGR
Nicolas
Hors ligne
#13 Thu 04 April 2013 10:19
- yasmine07
- Participant occasionnel
- Date d'inscription: 4 Mar 2013
- Messages: 21
Re: PostGIS: Enregistrer ses résultats en Shapefile
merci pour la précision Nicolas :-).
Hors ligne