ogr2ogr不创建表

时间:2018-09-10 14:10:59

标签: sql-server geography ogr2ogr

im遵循本指南https://alastaira.wordpress.com/ogr2ogr-patterns-for-sql-server/

尝试使用ogr2​​ogr命令将某些形状导入SQL。

我正在使用以下命令:

  

ogr2ogr -overwrite -f MSSQLSpatial [连接字符串] [shapefile]   -nln“ shape3” -nlt GEOMETRY

并收到此错误:

  

错误1:针对新功能的INSERT命令失败。   [Microsoft] [ODBC SQL Server驱动程序] [SQL Server]无效的对象名称“ dbo.shape3”。   错误1:无法从图层tl_2010_06_zcta510写入功能0。   错误1:在tl_2010_06_zcta510层翻译失败后过早终止翻译(使用-skipfailures跳过错误)

该命令不会创建表,并且插入将失败。

我尝试首先创建表并使用命令在其上插入:

  

ogr2ogr -f“ MSSQLSpatial” [连接字符串] [shapefile] -a_srs   “ ESPG:4269” -lco“ GEOM_TYPE = geography” -lco“ GEOM_NAME = area” -nln   “ shapes3”

它运行良好,因为它不会加载GEOGRAPHY列(区域),而是保持NULL。

我正在使用指南中提供的文件,并且连接字符串中的用户是管理员,所以这不是权限问题。

谢谢大家。

1 个答案:

答案 0 :(得分:0)

解决了将-lco UPLOAD_GEOM_FORMAT = wkt添加到命令的问题,该命令与某些几何格式有关。

  

UPLOAD_GEOM_FORMAT :(从GDAL 2.0.0开始)指定几何格式(wkb   或wkt)时创建或修改功能。默认值为wkb。   https://www.gdal.org/drv_mssqlspatial.html