[Gfoss] a volte le opinioni cambiano

Alessandro,

Preso atto che Spatialite 40 ha svariate funzionalità in piu' rispetto
a Spatialite 3.

Se io genero un DB con spatialite 4.0 , ottengo un db.sqlite versione 4.
Poi se lo converto e lo riporto a db.sqlite versione 3 usando
l'utility "spatialite-convert", ottengo un db che posso aprire con
qgis.

Pero' a questo punto se io lo riapro con la console spatialite 4.0
posso continuare su di esso , pur essendo in versione 3, a usufruire
di tutte le features aggiuntive
esistenti in spatialite 4.0 ?

Penso ai tin, alla MakeValid, alle funzioni di dumpshp evoluto, etc...

Se cosi fosse,
mal di poco veramente uno si crea un db con sl4 lo converte a sl3 e
poi lo usa con tutte le dll e le consoles varie di SL4.
E' la fatic di fare un convert all'inizio, poi da quel momento in poi
usare sempre SL4 ma ha la compatibiltia con qgis assicurata vita
natural durante di quel file.

Andrea.

Furieri wrote,

Frankie,

funziona a rovescio: la 4 legge perfettamente i DB creati dalla 3
(e persino quelli creati dalla 2): sono la 2 e la 3 che non riescono
a leggere i DB creati dalla 4.
ergo continuare a tenere in parallelo sia la 3 che la 4 a cosa serve ?

Una piccola utilità di conversione 3->4 no?

c'e' gia' nella 4: spatialite_convert (dentro a spatialite-tools)
https://www.gaia-gis.it/fossil/libspatialite/wiki?name=switching-to-4.0

concludendo: la 4 e' di per se capace di connettere qualsiasi DB,
a prescindere dalla versione con cui e' stato inizialmente creato.
ed inoltre la 4 contiene un tool che consente di fare tutte le
conversioni di formato avanti ed indietro tra le varie versioni.
la cosa piu' saggia pare quella di cestinare quanto piu' velocemente
possibile la 3 e passare di corsa tutto quanto sulla 4 :wink:

--

-----------------
Andrea Peri
. . . . . . . . .
qwerty àèìòù
-----------------

On Thu, 20 Dec 2012 11:48:40 +0100, Andrea Peri wrote:

Alessandro,

Preso atto che Spatialite 40 ha svariate funzionalità in piu' rispetto
a Spatialite 3.

Se io genero un DB con spatialite 4.0 , ottengo un db.sqlite versione 4.
Poi se lo converto e lo riporto a db.sqlite versione 3 usando
l'utility "spatialite-convert", ottengo un db che posso aprire con
qgis.

certamente: spatialite_convert ti riallinea le meta-tavole sul layout
gia' usato dalla v3, e quindi dopo la conversione potrai aprire il
DB p.es. usando libspatialite v.3.0.1 (quella attualmente distribuita
da OSGeo4W)

Pero' a questo punto se io lo riapro con la console spatialite 4.0
posso continuare su di esso , pur essendo in versione 3, a usufruire
di tutte le features aggiuntive
esistenti in spatialite 4.0 ?

Penso ai tin, alla MakeValid, alle funzioni di dumpshp evoluto, etc...

certo che si: se usi spatialite CLI e/o spatialite_gui della 4.0 (Win-x86)
contengono tutto il supporto necessario per le funzione evolute.
il fatto che il layout delle meta-tavole del DB sia v3 o v4 non ha nessun
impatto sulle funzioni visibili a livello SQL

Se cosi fosse,
mal di poco veramente uno si crea un db con sl4 lo converte a sl3 e
poi lo usa con tutte le dll e le consoles varie di SL4.
E' la fatic di fare un convert all'inizio, poi da quel momento in poi
usare sempre SL4 ma ha la compatibiltia con qgis assicurata vita
natural durante di quel file.

esiste comunque un side-effect di cui tenere conto: il nuovo layout
della v4 e' molto piu' "smart"; p.es. ti supporta un set di info
statistiche che non e' disponibile sul vecchio layout v3

effetto pratico: eseguire UPDATE_STATISTICS() su un db v.4 gode
di tutta una serie di ottimizzazioni spinte, se invece usi un
db v.3 disporrai di un supporto statistico minimale e molto meno
sofisticato.
e.g. quando andrai ad aprire uno dei tuoi DB-file "pesanti" da
20+ GB, QGIS potrebbe essere decisamente piu' lento se usi
il vecchio layout v.3
ma anche .dumpshp potrebbe rivelarsi molto piu' lento.

comunque a parte eventuali "effetti performance" non avrai
nessun'altra ricaduta negativa se continui ad usare il vecchio
formato 3.0

ciao Sandro

--
Il messaggio e' stato analizzato alla ricerca di virus o
contenuti pericolosi da MailScanner, ed e'
risultato non infetto.