On Tue, 12 Oct 2010 16:13:37 +0200, Paolo Cavallini wrote > Il 12/10/2010 16:10, marco zanieri ha scritto: > > Per esempio in una tabella di feature class areale nel campo the_geom ho > > il seguente valore: > > 0101000000D441C64A39023A41A112F8E2729C5241 > > che credo non sia in formato WKT > > WKB, vedi http://en.wikipedia.org/wiki/Well-known_binary >
Mi permetto di corregere: "quasi" WKB, ma non esattamente ... Non è una idiosincrasia di PostGIS: è una regola costante per praticamente tutti gli Spatial DBMS (SpatiaLite compreso, ovvio) a) i formati standard WKB e WKT si usano "esternamente" al DB b) ma poi ciascun DBMS utilizza un proprio specifico formato binario specifico per la rappresentazione "interna" delle geometrie. basti solo pensare al fatto che WKB *non* prevede la memorizzazione dello SRID .... c) di regola questi "formati binari interni" assomigliano molto al WKB, ma hanno sempre qualche header/footer "esoterico". btw le rappresentazioni "interne" utilizzate da MySQL Spatial / PostgreSQL PostGIS / SpatiaLite sono sostanzialmente diverse ed incompatibili. Ma grazie alla "traduzione" standard WKB/WKT sono anche reciprocamente pienamente interoperabili. Insomma, mettersi a "sciacquettare a manina" i dati binari memorizzati dentro ad uno Spatial DBMS non è per nulla cosa saggia e prudente ... e presumibilmente può anche generare spiacevoli sorprese quando cambia la versione (perchè gli sviluppatori possono anche legittimamente decidere di modificare/ottimizzare il formato interno). Soluzione: usare sempre le apposite funzioni di accesso ai dati: AsText(), AsBinary(), GeomFromText(), GeomFromWKB() etc. queste sono state inserite nello standard OGC-SFS proprio per disaccoppiare le rappresentazioni interne da quelle esterne, rendendo tutti i meccanismi di implementazione totalmente trasparenti per gli utilizzatori. e servono ottimamente per evitare di dovere mai "mettere le mani" sui formati interni. ciao Sandro _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [email protected] 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 rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 474 iscritti al 18.9.2010
