[Gfoss] importare più shapefile in db spatialite

Totò Fiandaca pigrecoinfinito a gmail.com
Mer 24 Maggio 2017 21:01:54 CEST


uso molto la gui e grazie al tuo suggerimento ho risolto tutto, funziona
bene.

grazie

Il giorno 24 maggio 2017 20:13, <a.furieri a lqt.it> ha scritto:

> On Wed, 24 May 2017 18:01:04 +0200, Totò Fiandaca wrote:
>
>> Salve a tutti,
>> vorrei importare, in un db spatialite, più shapefile contemporaneamente;
>> ho fatto alcune ricerche nel web e l'unica soluzione trovata è quella
>> spiegata da Furieri qui [0], ho seguito la procedura ma con esito
>> negativo;
>>
>> uso spatialite_gui 2.0.0 devel
>> spatialite 4.3.0a
>> sqlite 3.8.11.1
>> su win 10 64 bit
>>
>> procedura usata:
>>
>> creo script sql:
>> SELECT InitSpatialMetadata(1);
>> SELECT ImportSHP('C:\Users\Salvatore\Desktop\wrf23032\retic',
>> 'retic','CP1252', 23032);
>> SELECT ImportSHP('C:\Users\Salvatore\Desktop\wrf23032\reg',
>> 'reg','CP1252',
>> 23032);
>>
>> avvio shell OSGeo4W e digito:
>> SET SPATIALITE_SECURITY=relaxed
>>
>> poi
>>
>> spatialite_gui db_toto_2.sqlite  mysqlscript.sql
>>
>>
>> risultato:
>> si avvia correttamente spatialite_gui con il db, ma non importa nulla.
>>
>> dove sbaglio?
>>
>>
> ciao Toto',
>
> stai facendo un po' di confusione tra ambienti di
> shell (riga di comando) e ambienti grafici (GUI).
>
> tanto per iniziare, la variabile di ambiente
> SPATIALITE_SECURITY_RELAXED la devi impostare
> esplicitamente solo quando usi i tools a riga
> di comando direttamente dalla shell.
> ma non serve assolutamente a nulla quando usi
> spatialite_gui; la GUI e' sempre autorizzata
> by default a leggere e scrivere sul filesystem,
> e se proprio vuoi abilitare/disabilitare questa
> funzionalita' lo devi fare tramite gli appositi
> pulsanti della toolbar.
>
> a seguire: la GUI non e' lo strumento migliore
> per eseguire uno SQL script.
> usa piuttosto uno dei tools command line, che
> sono fatti apposte per integrarsi nell'ambiente
> di shell. quindi:
> - puoi usare direttamente spatialite.exe
> - oppure puoi usare sqlite3.exe, ma in questo
>   caso devi modificare il tuo SQL script in
>   modo tale da caricare per prima cosa il
>   modulo di estensione spatialite.
>   sostanzialmente, basta aggiungere questa
>   riga in testa allo SQL script:
>   SELECT load_extension('mod_spatialite'),
>
> ultimo errore: il tuo comando e' il seguente:
>
> spatialite_gui db_toto_2.sqlite  mysqlscript.sql
>
> abbiamo gia' visto che e' sbagliato utilizzare
> spatialite_gui, casomai dovresti usare spatialite.exe;
> ma anche in questo caso stai usando la sintassi
> sbagliata.
> il path del datatabase-file e' un argomento di
> invocazione, ma il path dello script lo devi
> passare come redirezione dello standard input;
> invece come lo stai passando tu diventa
> semplicemente un ulteriore argomento, e viene
> semplicemente ignorato.
> la sintassi corretta (sia su Windows che su Linux)
> e' questa qua:
>
> spatialite db_toto_2.sqlite  <mysqlscript.sql
>
> in cui quel segno "minore" davanti al path dello
> SQL script serve proprio per ridirigere lo
> standard input del processo.
> in soldoni: stai semplicemente chiedendo al
> comando spatialite.exe di leggere i comandi
> SQL da un file (lo script, appunto) invece
> che dalla tastiera come normalmente accade;
> qundo l'ultimo dei comandi presenti nello
> SQL script spatialite.exe terminera'.
>
> ovviamente questo "barbatrucco" non potra' mai
> funzionare con un'applicazione GUI, semplicemente
> perche' nell'ambiente GUI non esiste proprio il
> concetto di uno standard input associato al processo.
>
> ultima osservazione: se proprio ritieni
> indispensabile utilizzare la GUI anche per
> eseguire gli SQL script lo puoi comunque
> fare (anche se non ha molto senso).
> se cerchi bene tra i vari pulsanti della
> toolbar vedrai che e' presente un pulsantino
> "execute SQL script"
>
> ciao Sandro
>
>
>
> _______________________________________________
> Gfoss a lists.gfoss.it
> 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.
> 808 iscritti al 07/03/2017
>



-- 
*Ing. Salvatore Fiandaca*
*mobile*.:+39 327.493.8955
*m*: *pigrecoinfinito a gmail.com <pigrecoinfinito a gmail.com>*
*C.F*.: FNDSVT71E29Z103G
*P.IVA*: 06597870820
*blog:** https://pigrecoinfinito.wordpress.com/
<https://pigrecoinfinito.wordpress.com/>     *

43°51'0.54"N  10°34'27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman

Questo documento, allegati inclusi, contiene informazioni di proprietà di
FIANDACA SALVATORE e deve essere utilizzato esclusivamente dal destinatario
in relazione alle finalità per le quali è stato ricevuto. E' vietata
qualsiasi forma di riproduzione o divulgazione senza l'esplicito consenso
di FIANDACA SALVATORE. Qualora fosse stato ricevuto per errore si prega di
informare tempestivamente il mittente e distruggere la copia in proprio
possesso.


Maggiori informazioni sulla lista Gfoss