Ik ben op zoek naar een (betere) methode voor het inlezen van BRK gml-files naar postgis.
mijn huidige werkwijze is als volgt:
Ik maak nu gebruik van de download-viewer van PDOK voor het downloaden van een geselcteerd gebied. Hierbij kies ik alleen voor het feature ‘perceel’. In de zip zit 1 gml-file.
Deze file zou ik het liefst in een keer in postgis willen laden (met ogr2ogr) maar dit lukt niet vanwege de (te) lange veldnamen met hierin pipe-characters.
Nu sla ik de gml eerst op als gpkg en pas ik in qgis de veldnamen handmatig aan (en ik voeg een aantal velden samen). Dit laad ik weer in postgis.
Hier was ik idd mee bezig geweest, maar krijg het nog niet lekker voor elkaar:
Dit werkt bv. prima: C:\Program Files\QGIS 3.28.7>ogr2ogr -f GPKG C:/Divers/GIS/percelen/extract/kadastralekaart_perceel_output3.gpkg C:/Divers/GIS/percelen/extract/kadastralekaart_perceel.gml -sql “SELECT code as test from perceel”
Maar hier gaat het bv. mis: C:\Program Files\QGIS 3.28.7>ogr2ogr -f GPKG C:/Divers/GIS/percelen/extract/kadastralekaart_perceel_output3.gpkg C:/Divers/GIS/percelen/extract/kadastralekaart_perceel.gml -sql “SELECT kadastraleAanduiding|TypeKadastraleAanduiding|aKRKadastraleGemeenteCode|aKRKadastraleGemeenteCode|Waarde, code as test from perceel” ERROR 1: SQL Expression Parsing Error: syntax error, unexpected $undefined, expecting FROM. Occurred around : SELECT kadastraleAanduiding|TypeKadastraleAanduiding|aKRKadastraleG
Ik heb meerdere varianten van SELECT geprobeerd met quotes, dubbele quotes, backticks, backslash, blockhaken, maar krijg het nog niet werkend…
kan dit nog met toestenbordinstellingen te maken hebben misschien?
Het correct quoten en escapen van een query met moeilijke namen en tekens is een beetje een black art. Vaak zijn er veel pogingen nodig.
Het is denk ik makkelijker om de query in een text file te zetten en die dan mee te geven met iets als (uit het hoofd): -sql @C:\pad\query.sql. Dat probeert makkelijker uit en scheelt dan alweer 1 set quotes (denk ik).
Hi Koos,
Welke versie van OGR gebruik je?
Ik dacht namelijk dat nieuwere versies van OGR de veldnamen default “ge-launder-ed” worden (= worden aangepast aan wat postgis aan namen accepteert). (in te stellen met -loc launder=yes|no)
Dit is voor mij nog wel ‘next level’ hoor…
Wel een keer leuk om me te verdiepen hoe dit (NLExtract) in elkaar zit.
Komt voor mij nu te weinig voor om er op dit moment tijd in te steken, maar wellicht op termijn wel.
Beste Koos, GFS bestanden zijn optioneel onderdeel van ogr2ogr parameters, ok ietwat complex, maar sterke faciliteit om de conversie te ‘sturen’, dus je hoeft geen NLExtract te gebruiken.