Я хочу импортировать файл shp в postgreSQL. Сначала я создаю файл sql, а затем запускаю PostgreSQL. Чтобы создать файл sql, я запускаю эту команду в Windows cmd:
shp2pgsql -s 4326 worldCountries.shp worldcountries postgres > worldcountries.sql
а затем запустите:
psql -d postgres -U postgres -p 4321 -f worldcountries.sql
но результат таков:
psql: worldcountries.sql: 21: ОШИБКА: функция addGeometrycolumn (неизвестно, неизвестно, неизвестно, неизвестно, неизвестно, целое число) не существует
postgis
shapefile
postgresql
import
Мортеза Мальванди
источник
источник
"CREATE EXTENSION postgis;"
postgis.net/docs/… .Это
ERROR: function addGeometrycolumn(unknown, unknown, unknown, unknown,unknown, integer) does not exist
означает, что расширение postgis не установлено на вашем postgresql . Зайдите сюда и установите его.источник
Вы можете использовать встроенный плагин для импорта, который устанавливается при установке расширения PostGis в PostgreSQL. Вы можете найти его в разделе «Плагины» в меню. Он называется PostGIS Shapefile и DBF loader.
посмотрите это видео на YouTube в качестве примера
источник
У вас есть другая проекция в вашем PSQL; и иметь проекцию не обязательно. Есть ли схема, к которой вы хотите добавить файл формы?
Это должно работать:
источник
-p
forpsql
сообщает ему порт сервера, а не проекцию. Проекция становится встроенной в сценарий SQL. См. Прекрасное руководство дляpsql
поведения. В этом случае порт, который указывает OP, не является портом по умолчанию, поэтому он является обязательным. Я бы также вообще не советовал хранить фигуру без проекции. Это ограничивает вашу способность изменять прогнозы, что может быть полезно для получения более точных расчетов.