2017-09-14 42 views
0

我试图根据this questionthat instruction解散shapefile。然而,当我跑我行代码:使用ogr和SQLite解析shapefile时出错

ogr2ogr "c:/working/testing/dissolve.shp" "c:/working/testing/test.shp" -f"ESRI Shapefile" -dialect sqlite -sql "SELECT ST_Union(geometry) FROM 'test'" 

我得到以下错误:

ERROR 1: In ExecuteSQL(): sqlite3_step(SELECT ST_Union(geometry) FROM 'temp_2'): SQL logic error or missing database 

我缺少什么?

编辑:QGIS的“溶解”算法工作得很好(不是使用ogr2​​ogr,但他们自己的)。有没有我不明白的魔法?

+0

您错过了实际的错误信息。 'ogr2ogr'真的保密吗? –

+0

不幸的是,这就是我得到的 – s6hebern

回答

0

好的,我自己整理了一下。之所以失败是shape文件中,某些功能已经被标记为删除,按照此错误信息读取单一功能时:

ERROR 1: Attempt to read shape with feature id (0), but it is marked deleted. 

我现在能够通过复制shape文件来解决这个问题,这还重新打包并删除标记为的所有功能。有了这个新的副本,代码的第一行工作得很好。