[Gfoss] SPLIT LINES WITH POINTS, THE SPATIALITE WAY - aiuto per script SQL

a.furieri a lqt.it a.furieri a lqt.it
Mar 1 Maggio 2018 12:16:31 CEST


On Tue, 1 May 2018 01:42:48 -0700 (MST), pigreco wrote:
> Buongiorno a tutti e sereno 1° maggio;
>

altrettanto a te.


> lanciando l'intero script SQL viene fuori sempre un errore, nel caso 
> in
> esame un errore alla row 39 , che non esiste!!!)
>

no, a me (su Win7 Pro 64 bit) risultano si degli errori, ma in 
posizioni
differenti, per la pecisione alle linee 30 e 36, che coincidono con le
ultime due chiamate alla RecoverGeometryColumn().

ho provato a commentare quelle due linee e tutto funziona bene; a 
questo
punto ho riscritto quelle due righe "a mano" (niente cut&paste) ed ho
cancellato le due righe originali.
ora funziona tutto bene :-D

due possibili spiegazioni alternative:
1) misteri teologici di ordine superiore che trascendono le normali
    capacita' di indagine della Scienza Galileiana.
2) qualche caratteraccio "zozzo" che si e' infilato dentro al tuo 
UTF-8,
    invisibile ad occhio nudo ma comunque capace di mettere in crisi
    il parser SQL di SQLite.

ovviamente quella valida e' la 2)
i due files originale/corretto hanno dimensioni diverse (uno e' piu'
lungo di 2 bytes), e sia "diff" che "cmp" riportano delle differenze
esattamente per le linee 30 e 36.
andando a scavare di fino facendo un hex dump del tuo file vedrai che
il punto-e-virgola che chiude le due righe incriminate e' codificato
in modo diverso tra le due copie originale/modificata.

la spiegazione piu' verosimile e' che tu per scrivere quello Script
SQL hai usato piu' editor differenti, almeno uno dei quali ha idee
un po' stravaganti sulla corretta codifica dei caratteri UTF-8.
probabilmente l'errore si e' verificato una sola volta, ma poi si
e' propagato grazie alle fantastiche meraviglie del "taglia&incolla".
ma anche lavorare un po' su Win ed un po' su Linux potrebbe
facilmente aiutare ad incappare in incidenti di questo tipo ;-)

ciao Sandro


Maggiori informazioni sulla lista Gfoss