Генерация SQL-структуры базы данных по классификатору

Печать Предыдущая страница Стартовая страница Следующая страница

Сформировать SQL-структуру базы данных по классификатору (rsc2sql.py : GenerateSemanticsTable)

Скрипт предназначен для автоматического формирования SQL-файла (PostgreSQL) по структуре классификатора ГИС «Панорама» формата *.rsc или *.rscz. На основании данных классификатора создаются таблицы базы данных с учетом слоев и семантик. Итогом работы является один файл структурированных запросов SQL, готовый для выполнения в PostgreSQL.

 

clip0105

 

При выполнении команды открывается диалог, в котором требуется выбрать файл классификатора (*.rsc/*.rscz) и указать путь для сохранения результирующего *.sql файла. По умолчанию имя формируется на основе имени классификатора и сохраняется в той же директории. Поля выбора доступны только через диалог выбора файлов и недоступны для ручного редактирования. При отсутствии прав на запись в выбранную директорию выводится соответствующее предупреждение.

Дополнительно можно включить опцию Формировать таблицу и триггеры для ведения журнала изменений, а также выбрать опцию Формировать одну таблицу по классификатору без разбиения по слоям. В стандартном режиме создается отдельная таблица для каждого слоя классификатора. Имена таблиц формируются на основе ключа слоя.

Каждая создаваемая таблица содержит базовые поля: id, objectkey, geom, excode, objtext, а также поля семантик слоя. Типы колонок определяются по данным классификатора. В начало SQL-файла автоматически добавляются команды установки кодировки UTF8 и подключения расширений postgis и postgis_topology.

Сформированная структура базы данных обеспечивает последующий перенос хранения пространственных данных из локальных файлов карт в централизованную базу данных PostgreSQL. Это позволяет организовать многопользовательский доступ, централизованное администрирование, резервное копирование, контроль изменений и интеграцию с внешними информационными системами.

Во время выполнения отображается индикатор прогресса с указанием процента выполнения операции. Кнопка Выполнить меняется на Прервать и позволяет остановить процесс. По завершении выводится сообщение о сформированном файле.

Сформированный SQL-файл может быть выполнен стандартными средствами PostgreSQL, например командой psql -f имя_файла.sql.