Настройка окружения QGIS + PostgreSQL + PostGIS

+ +

Использование слоев, хранящихся в базе данных (PostgreSQL), позволяет использовать всю мощь SQL-запросов в решении ГИС-задач.

ГИС = База Данных + Геометрия

QGIS = PostgreSQL + PostGIS

PostGIS - дополнение к PostgreSQL, добавляющие геометрические поля к реляционной базе данных.

Для использования данной связки, можно инсталлировать БД PostgreSQL и PostGIS локально.

www.postgresql.org - найти установочный пакет для своего типа системы (для Windows XP - http://get.enterprisedb.com/postgresql/postgresql-9.3.5-1-windows.exe)

postgis.net - найти установочный пакет для своего типа системы - для Windows XP - http://download.osgeo.org/postgis/windows/pg93/postgis-bundle-pg93x32-setup-2.1.3-1.exe (если есть доступ в Интернет, то можно не скачивать)

Порядок установки:

1. Установка PostgreSQL. После окончания установки может запустить Stack Builder, позволяющий установить из сети Интернет дополнения, в частности - PostGIS. Если у вас нет доступа к сети Интернет, то откажитесь от запуска Stack Builder.

2. Если уже не установили на Шаге 1, то выполните установку PostGIS. Не забудьте поставить галочку - "Установить Spatial Database" - тогда установщик создаст для вас базу с геометрическим расширением.

3. Теперь можете загрузить в базу данных имеющиеся слои в формате ESRI Shape. Запустите для этого утилиту PostGIS Shape file and DBF Loader Exporter. Выберите необходимые слои, и не забудьте поставить правильный SRID (по-умолчанию - 0), например, для WGS84 - SRID=4326. Это важно для правильного подсчета расстояний, длин и площадей.

4. Запустите QGIS. Можете добавить слои PostGIS. Введите необходимые параметры подключения к базе данных (один раз их надо ввести).

5. Теперь можно выполнять SQL-запросы (для этого Шаг 4 не обязателен). QGIS - База данных - Менеджер Базы Данных. F2 - SQL-запрос. Документацию по специфичным функциям для работы с геометрией, необходимо смотреть на сайте postgis.net

6. Если хотите отобразить результат запроса на карте QGIS, тогда не забудьте поставить к окне запроса внизу галочку "Загрузить как новый слой" - результат запроса появится как новый слой с указынным именем (префиксом) в списке слоев QGIS.

Примеры ГИС-запросов с использованием SQL:

http://postgis.net/docs/manual-2.1/using_postgis_dbmanagement.html#examples_spatial_sql

Основные функции работы с геометрией

Справочник по функциям (русский, 2010г.)

Руководство по PostGIS (2008г.)