[gdal-dev] GeoJSON with "id" in properties and SQLite dialect

Scott public at postholer.com
Mon Apr 7 14:15:26 PDT 2025


As a work around, this seems to work:

ogr2ogr -preserve_fid idtest1.geojson idtest.json
ogrinfo -dialect sqlite -sql "select * from main" idtest1.geojson

On 4/7/25 13:43, Rahkonen Jukka via gdal-dev wrote:
> Hi,
> 
> I notised this question on gis.stackexchange https://gis.stackexchange.com/questions/491741/gdal-sqlite-no-such-table-when-id-in-properties
> 
> I tried to make as simple as possible test case and here is the GeoJSON:
> 
> {
>      "type": "FeatureCollection",
>      "name": "main",
>          "features": [
>          {
>              "type": "Feature",
>              "properties": {
>                  "id": 9794
>              },
>              "geometry": {
>                  "type": "Point",
>                  "coordinates": [
>                   45.14755797662297,
>                  -12.770174793784179
>                  ]
>             }
>          }
>      ]
> }
> 
> Is there any workaround for using SQLite dialect with this dataset? What goes wrong is that an attribute "id" appears inside properties where it actually does not belong. GDAL interprets that it should be used as promary key in the virtual SQLite table that gets created, but it also tries to create another attribute with the same name.
> 
> ogrinfo -dialect sqlite -sql "select geometry from main" idtest.json
> INFO: Open of `idtest.json'
>        using driver `GeoJSON' successful.
> ERROR 1: Cannot create virtual table for layer 'main' : CREATE VIRTUAL: invalid SQL statement : CREATE TABLE "main"("id" INTEGER HIDDEN PRIMARY KEY NOT NULL,"id" INTEGER,OGR_STYLE VARCHAR HIDDEN,"GEOMETRY" BLOB_POINT_XY_4326, OGR_NATIVE_DATA VARCHAR, OGR_NATIVE_MEDIA_TYPE VARCHAR)
> ERROR 1: In ExecuteSQL(): sqlite3_prepare_v2(select geometry from main):
>    no such table: main
> 
> -Jukka Rahkonen-
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/gdal-dev



More information about the gdal-dev mailing list