Создание SHP из SQL

Можно ли конвертировать sql в файл shp с помощью pgsql2shp без оболочки? Через какой-то синтаксис SQL (postgis, postgresql)?


person Z77    schedule 06.05.2010    source источник


Ответы (1)


Это невозможно без вызова оболочки. Тем не менее, два kuldge доступны:

1) Вы можете создать функцию на небезопасном языке (например, python) в postgresql, которая затем выполняет pgsql2shp. Это уродливый хак, но его преимущество заключается в создании шейп-файла с помощью SQL-запроса.

2) Вы можете сбросить результаты sql во временную таблицу, а столбец геометрии сохранить как текст через ST_AsText. Затем вы можете сбросить таблицу в csv с помощью команды sql COPY TO, а затем восстановить шейп-файл из csv позже, используя скрипт на стороне клиента.

Ни один из этих подходов не является полностью удовлетворительным (в частности, подход 2 может привести к некоторой потере точности вашей геометрии), но их может быть достаточно для достижения вашей цели.

person fmark    schedule 10.05.2010