ogr2ogr не создает таблицы - PullRequest
       11

ogr2ogr не создает таблицы

0 голосов
/ 10 сентября 2018

я пытаюсь импортировать некоторые фигуры в SQL с помощью команды ogr2ogr, следуя этому руководству https://alastaira.wordpress.com/ogr2ogr-patterns-for-sql-server/

Я использую эту команду:

ogr2ogr -overwrite -f MSSQLSpatial [строка подключения] [шейп-файл] -nln "shape3" -nlt ГЕОМЕТРИЯ

и получаю эту ошибку:

ОШИБКА 1: команда INSERT для новой функции не выполнена. [Microsoft] [Драйвер ODBC SQL Server] [SQL Server] Недопустимое имя объекта 'dbo.shape3'. ОШИБКА 1: Невозможно записать элемент 0 из слоя tl_2010_06_zcta510. ОШИБКА 1: Прекращение перевода преждевременно после неудачной трансляции слоя tl_2010_06_zcta510 (используйте -skipfailures для пропуска ошибок)

Команда не создает таблицу, и вставки не выполняются.

Сначала я попытался создать таблицу и с помощью команды вставить в нее:

ogr2ogr -f "MSSQLSpatial" [строка подключения] [shapefile] -a_srs "ESPG: 4269" -lco "GEOM_TYPE = география" -lco "GEOM_NAME = область" -nln "Shapes3"

Работает нормально, за исключением того, что не загружает колонку ГЕОГРАФИИ (область), она остается NULL.

Я использую файл, представленный в руководстве, а пользователь в строке подключения является администратором, поэтому это не проблема с правами доступа.

Спасибо всем заранее.

1 Ответ

0 голосов
/ 10 сентября 2018

Решено, добавив -lco UPLOAD_GEOM_FORMAT = wkt к команде, это связано с некоторым форматированием геометрии.

UPLOAD_GEOM_FORMAT: (из GDAL 2.0.0) Укажите формат геометрии (wkb или wkt), когдасоздание или изменение функций.По умолчанию это wkb.https://www.gdal.org/drv_mssqlspatial.html

...