Salve a tutti,
ma qual'è il modo migliore per caricare una serie di shapefile in un db spatialite? finora me la sono cavata egregiamente con ogr2ogr da script Bash o Dos, ho provato ad utilizzarlo anche all'interno di pyQgis per un plugin che porto avanti nei ritagli di tempo [0], ma dovrebbe esserci qualcosa di meglio... pyspatialite? Qspatialite? tenete presente che dovendo caricare e mosaicare la CTR voglio: - creare la tabella se non esiste, altrimenti aggiungere le feature - creare l'indice spaziale alla fine - se il tracciato campi da uno shape all'altro è differente aggiungere i campi nuovi forse vale la pena mettersi a fare tutto in python leggendo le features con pyshp? Quale strada mi consigliate? Qualche plugin da cui prendere esempio? amefad [0] https://gitlab.com/Amefad/importCtr/blob/master/ctr_import_dialog.py _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 786 iscritti al 30.9.2015 |
On Fri, 2 Oct 2015 13:39:15 +0200, Amedeo Fadini wrote:
> Salve a tutti, > > ma qual'è il modo migliore per caricare una serie di shapefile in un > db spatialite? finora me la sono cavata egregiamente con ogr2ogr da > script Bash o Dos > ottima scelta: ogr2ogr offre un supporto veramente buono per spatialite, e tra l'altro supporta pure la modalita' append. ottima anche la scelta di lavorare direttamente da shell lasciando completamente perdere la GUI; quando devi fare import massivi e che coinvolgono tanti files diversi usare una interfaccia grafica e' uno degli approcci piu' irrazionali e meno produttivi che la mente umana possa concepire. > ho provato ad utilizzarlo anche all'interno di > pyQgis per un plugin che porto avanti nei ritagli di tempo [0], ma > dovrebbe esserci qualcosa di meglio... pyspatialite? Qspatialite? > certamente esiste qualcosa di meglio (piu' flessibile, piu' efficiente, meglio controllabile): lascia perdere pyspatialite e/o qspatialite. fatti piuttosto un bello script SQL, magari anche bello polposo da un migliaio di righe (e pure oltre, se serve). spatialite ti mette direttamente a disposizione tutte le funzioni SQL che ti servono per accedere ai tuoi SHP esterni (e magari pure per tirare dentro qualche file csv, foglio excel etc): https://www.gaia-gis.it/fossil/libspatialite/wiki?name=4.2.1+functions#2 per scrivere uno sql script ti basta "vi" (o qualsiasi altro text editor a tua scelta): e per lanciarlo in esecuzione ti basta semplicemente la shell dei comandi passando il tuo script sullo standard input di spatialite (CLI) # spatialite miodb.sqlite <mio-scropt.sql se usi saggiamente le transazioni puoi arrivare ad ottenere qualcosa che ha la medesima robustezza di un carro armato. magari all'inizio ti potra' sembrare un modo stravagante di lavorare; ma vedrai che quando ci avrai preso la mano finarai per scoprire anche tu (come moltissimi altri power-users) che ricorrerre massivamente agli sql scripts lanciati in batch e' il modo piu' elegantemente efficiente e produttivo per sfruttare fino in fondo tutta la potenza di cui un DBMS e' capace. ciao Sandro _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 786 iscritti al 30.9.2015 |
In reply to this post by Amedeo Fadini
io questo tipo di attivita' la eseguo da dentro la console di
spatialite, con il comando .loadshp .... Ma effettua il load di un unico shapefile per cui devi reiterare per ogni sp che vuoi caricare. A. Il 02/10/2015 13:39, Amedeo Fadini ha scritto: > Salve a tutti, > > ma qual'è il modo migliore per caricare una serie di shapefile in un > db spatialite? finora me la sono cavata egregiamente con ogr2ogr da > script Bash o Dos, ho provato ad utilizzarlo anche all'interno di > pyQgis per un plugin che porto avanti nei ritagli di tempo [0], ma > dovrebbe esserci qualcosa di meglio... pyspatialite? Qspatialite? > > tenete presente che dovendo caricare e mosaicare la CTR voglio: > > - creare la tabella se non esiste, altrimenti aggiungere le feature > - creare l'indice spaziale alla fine > - se il tracciato campi da uno shape all'altro è differente aggiungere > i campi nuovi > > forse vale la pena mettersi a fare tutto in python leggendo le > features con pyshp? > Quale strada mi consigliate? Qualche plugin da cui prendere esempio? > > amefad > > [0] https://gitlab.com/Amefad/importCtr/blob/master/ctr_import_dialog.py > _______________________________________________ > [hidden email] > http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss > Questa e' una lista di discussione pubblica aperta a tutti. > I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. > 786 iscritti al 30.9.2015 _______________________________________________ [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 786 iscritti al 30.9.2015 |
Free forum by Nabble | Edit this page |