Завантаження вмісту геопакетів до PostgreSQL


15

Як трішки тла, ми прагнемо перейти від використання формфайлів. Ми вже почали використовувати геопакети для роботи на робочому столі (QGIS / ArcGIS), але часто є вимога завантажувати дані до наших баз даних PostgreSQL.

Мені відомо, що ви можете завантажувати вміст геопакетів до Postgres за допомогою QGIS, але цікаво, чи є утиліти командного рядка схожі на shp2pgsql для завантаження геопакетів або таблиць у геопакетках на Postgres? Я припускаю, що можливо ogr2ogr, але не можу знайти документацію.

Відповіді:


10

Цей підручник показує, як імпортувати геопакети в postgres за допомогою ogr2ogr, наприклад:

ogr2ogr -f PostgreSQL "PG:dbname=gadm" DNK_adm.gpkg

Зауважте, що імпорт у PostgreSQL таким чином перетворить регістр імен полів у ваших даних GeoPackage в малі регістри таблиці PostgreSQL. Для підтримки випадку вам потрібно скористатися такою lcoопцією, як:

ogr2ogr -f PostgreSQL "PG:dbname=gadm" DNK_adm.gpkg -lco LAUNDER=NO

Це чудово. У мене ogr2ogr працює з .gpkg. Тепер мені потрібно виконати пост-обробку для кожної з таблиць, створених з gpkg в postgres в моєму сценарії командного рядка, і потрібно витягти кожну назву таблиці з gpkg. Я бачу, що список ogrinfo перераховує таблиці, але будь-які ідеї, як я можу їх перетворити в змінну?
Джеймс Норріс

5

У майстра QGIS триває робота (наприклад, тут і тут, щоб «виправити» інструмент у QGIS (Імпорт вектора в базу даних Postgis - ...), який генерує параметри командного рядка для OGR2OGR для використання, спеціально для Postgis, який, здається, зламали QGIS 3. У мене також є ще один запит на витяг, запланований для отримання більше виправлень та додаткових опцій. Якщо ви можете зачекати тиждень або близько того, і використовувати master, або 3 місяці або близько того, і використовувати 3.4, то уникнете необхідності введення команди Параметри рядка вручну, і вони повинні працювати для багатьох різних форматів файлів, включаючи геопакет.


2

Використовуючи підручник за цим посиланням, краще додати до командного рядка GDAL (ogr2ogr) наступні параметри.

ogr2ogr -f PostgreSQL "PG:user=youruser password=yourpassword dbname=yourdbname" yourgeopackage.gpkg

Це працює для мене.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.