Buongiorno a tutti e sereno 1° maggio;
Nel tempo libero mi diletto a scrivere i miei (gis)appunti [0] nel mio blog (https://pigrecoinfinito.wordpress.com/); da tempo ho cercato una soluzione al problema in oggetto e credo di aver trovato una soluzione, da prove effettuate sembra funzionare bene. Non è tutta farina del mio sacco, il WORKFLOW è simile a quello adottato da Giovanni Manghi in questo articolo [1] per il caso postgis; ho realizzato uno script SQL [2] da utilizzare in spatialite_gui o tramite cli, ma in entrambi i casi ho sempre degli errori che non riesco a spiegarmi e quindi a risolvere; (eseguendo i singoli step tutto funziona bene, ma lanciando l'intero script SQL viene fuori sempre un errore, nel caso in esame un errore alla row 39 , che non esiste!!!) allego database di esempio [3] saluti e grazie ---- [0] https://pigrecoinfinito.wordpress.com/2018/04/28/split-lines-with-points-the-spatialite-way/ [1] https://mygisnotes.wordpress.com/2017/01/01/split-lines-with-points-the-postgis-way/ [2] https://gist.github.com/pigreco/6fe0e61938ae91a9a1f6f6eb720e531b [3] https://mega.nz/#!AUg33RDK!rzmFRaP6uaPUlJGCiNYkRYVVkyqsIu6NvIiSZ7-ODaA ----- https://pigrecoinfinito.wordpress.com/ -- Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/ _______________________________________________ [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. 796 iscritti al 28/12/2017 |
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 _______________________________________________ [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. 796 iscritti al 28/12/2017 |
a.furieri wrote
> On Tue, 1 May 2018 01:42:48 -0700 (MST), pigreco wrote: > > 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 Come scritto nella prima mail, il mio script deriva da quello di G. Manghi, cioè ho copiato e incollato su NotePad++ lo script e successivamente modificato. Altra cosa che ho notato (grazie a Andrea Borruso) che copiando ed incollando in spatialite_gui il seguente SQL statement: CREATE TABLE "points_over_lines" AS SELECT a.id AS id,ST_ClosestPoint(ST_Union(b.geom), a.geom) AS geom FROM civici a, strade b GROUP BY a.geom,a.id; SELECT RecoverGeometryColumn('points_over_lines','geom',3004,'POINT','XY'); l'esecusione funziona ma restituisce come nome colonna ';' ( vedi immagine 1) e non RecoverGeometryColumn('points_over_lines','geom',3004,'POINT','XY') (vedi immagine 2) <http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/file/t395773/split_strano.jpg> per ottenere come colonna del risultato: RecoverGeometryColumn('points_over_lines','geom',3004,'POINT','XY') ho cancellato e riscritto il ; Ora funziona tutto bene, grazie. ----- https://pigrecoinfinito.wordpress.com/ -- Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/ _______________________________________________ [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. 796 iscritti al 28/12/2017 |
Free forum by Nabble | Edit this page |