[Gfoss] Problema (bug?) esportando da PG a SQLITE con ogr2ogr
Alessandro Pasotti
ale.pas a tiscali.it
Ven 24 Set 2010 11:48:58 CEST
In data venerdì 24 settembre 2010 11:39:05, Giuseppe Sucameli ha scritto:
: > Ciao Alessandro,
>
> 2010/9/24 Alessandro Pasotti <ale.pas at tiscali.it>
>
> > $ ogr2ogr -f SQLite -dsco SPATIALITE=yes myfile.sqlite PG:"host=localhost
> > dbname=miodb" routing_arc
> >
> > ottengo un sqlite senza la colonna ID
>
> La colonna ID (chiave primaria) viene rimpiazzata con la colonna OGC_FID,
> colonna usata internamente per identificare le features.
>
> se invece, provo con:
> > $ ogr2ogr -f SQLite -dsco SPATIALITE=yes myfile.sqlite PG:"host=localhost
> > dbname=miodb" -sql "select id, * from routing_arc"
> >
> > ottengo un sqlite con la colonna ID ma con i valori ID tutti impostati a
> > NULL
>
> Usando la query invece, la colonna con chiave primaria non viene
> rimpiazzata.
> Infatti la colonna OGC_FID viene compilata senza considerare la colonna ID
> poiché la query che hai inserito potrebbe anche non contenere un campo
> univoco
> tra quelli restituiti.
>
> In questo caso quindi è come se avessi inserito 2 volte la colonna ID.
> Forse a seguito di conflitto di nomi di colonna (in quanto ripetuti) viene
> lasciata
> a NULL.
>
> l'unico modo che ho trovato di fargli riempire correttamente l'id è:
> > $ ogr2ogr -f SQLite -dsco SPATIALITE=yes myfile.sqlite PG:"host=localhost
> > dbname=miodb" -sql "select id as gid, * from routing_arc"
> >
> > curiosamente, con quest'ultimo comando mi trovo un sqlite con 2 colonne,
> > ID e
> > GID entrambe compilate correttamente.
>
> Ovviamente ti ritrovi il campo ID e quello GID, perché come ti dicevo sopra
> tutti
> i campi vengono mantenuti usando una query come parametro.
>
> C'è qualche logica in questo comportamento o è un baco ?
>
> Sei arrivato vicinissimo alla soluzione ;)
> Prova questa:
>
> $ ogr2ogr -f SQLite -dsco SPATIALITE=yes myfile.sqlite PG:"host=localhost
> dbname=miodb" -sql "select * from routing_arc"
>
> e tutto dovrebbe andare.
Perfetto!
Grazie.
--
Alessandro Pasotti
itOpen - "Open Solutions for the Net Age"
w3: www.itopen.it
Linux User# 167502
Maggiori informazioni sulla lista
Gfoss