2010-05-06 9 views

Répondre

1

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.