Est-il possible de convertir sql en fichier shp en utilisant pgsql2shp sans shell? Grâce à une syntaxe SQL (postgis, postgresql)?Création d'un SHP à partir de SQL
Répondre
Ce n'est pas possible sans appeler le shell. Cependant, deux kuldges sont disponibles:
1) Vous pouvez créer une fonction dans un langage dangereux (comme python) dans postgresql qui exécute alors pgsql2shp. C'est un hack laid, mais a l'avantage de produire un shapefile par requête SQL.
2) Vous pouvez vider les résultats SQL dans une table temporaire avec la colonne géométrique enregistrée en tant que texte via ST_AsText. Vous pouvez ensuite vider la table dans csv via la commande sql COPY TO, puis reconstruire un fichier de forme à partir de csv en utilisant un script côté client.
Aucune de ces approches n'est entièrement satisfaisante (l'approche 2 en particulier peut perdre une partie de la précision de votre géométrie), mais elles peuvent être suffisantes pour atteindre votre objectif.