Voglio sostituire le geometrie di una tabella postgis con altre che provengono da uno shapefile. La tabella postgres non ha uno srid determinato, anzi, forza lo srid così CONSTRAINT enforce_srid_the_geom CHECK (srid(the_geom) = (-1)) Convertendo lo shapefile in una tabella postgis (tramite Open Jump) temporanea i poligoni passano con uno srid = 0. Quando faccio un join tra le due tabelle per fare un UPDATE sulla geometria postgis mi dà errore, non accettando lo srid. Premesso che al momento non posso cambiare le caratteristiche della tabella di destinazione, e devo mantenere questo srid=-1, come posso fare? E che differenza c'è tra srid = 0 e srid = -1? Grazie Pia Miccoli tecnico Gis Ufficio Sic Comune di Fano tel. 0721-887746 Comune di Fano - www.comune.fano.ps.it --------------------------------------------------------------------------------------------------------------- Questo messaggio è destinato unicamente alle persone sopra indicate e le informazioni contenute sono da considerarsi strettamente riservate. Se avete ricevuto questo messaggio per errore, siete pregati di rispedirlo al mittente. Grazie. _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 540 iscritti al 4.11.2011 |
On 16/12/2011 12:57, PiaMic wrote:
> Voglio sostituire le geometrie di una tabella postgis con altre che > provengono da uno shapefile. > La tabella postgres non ha uno srid determinato, anzi, forza lo srid > così > > CONSTRAINT enforce_srid_the_geom CHECK (srid(the_geom) = (-1)) > > Convertendo lo shapefile in una tabella postgis (tramite Open Jump) > temporanea i poligoni passano con uno srid = 0. Quando faccio un > join tra le due tabelle per fare un UPDATE sulla geometria postgis > mi dà errore, non accettando lo srid. > Premesso che al momento non posso cambiare le caratteristiche della > tabella di destinazione, e devo mantenere questo srid=-1, come posso > fare? E che differenza c'è tra srid = 0 e srid = -1? > Prima ripulite la tabella con DELETE FROM nometabella e poi usate il plugin di QGis per caricare lo shapefile impostando lo SRID che vi serve. Saluti Luca -- Luca Casagrande "I love it when a plan comes together." _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 540 iscritti al 4.11.2011 |
In reply to this post by PiaMic
On 16/12/2011 12:57, PiaMic wrote:
> Voglio sostituire le geometrie di una tabella postgis con altre che > provengono da uno shapefile. > La tabella postgres non ha uno srid determinato, anzi, forza lo srid > così > > CONSTRAINT enforce_srid_the_geom CHECK (srid(the_geom) = (-1)) > > Convertendo lo shapefile in una tabella postgis (tramite Open Jump) > temporanea i poligoni passano con uno srid = 0. Quando faccio un > join tra le due tabelle per fare un UPDATE sulla geometria postgis > mi dà errore, non accettando lo srid. > Premesso che al momento non posso cambiare le caratteristiche della > tabella di destinazione, e devo mantenere questo srid=-1, come posso > fare? E che differenza c'è tra srid = 0 e srid = -1? Potete usare comunque QGis per creare la tabella temporanea impostando. tramite interfaccia, lo SRID. Per la differenza tra 0 e -1 credo che con -1 si indichi uno SRID non conosciuto. Luca -- Luca Casagrande "I love it when a plan comes together." _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 540 iscritti al 4.11.2011 |
In reply to this post by luca.casagrande@gmail.com
Ciao Pia,
-1 è il valore che PostGIS utilizza per indicare SRID non definito, ovvero coordinate cartesiane non georiferite. In realtà capita spesso di ricevere shape in Gauss-Boaga o UTM senza informazioni sul sistema di riferimento utilizzato (file prj o codice epsg), se le carichi in PG probabilmente avrenno SRID -1 (o 0, se carichi il dato con un client che lo imposta in questo modo). Puoi usare la funzione ST_SetSRID(geom) di postgis per cambiare lo SRID di una geometria (senza riproiettarla, ne imposta solo lo srid), direttamente nella tua update: update tabella inner join tabella2 ... set tabella.geom = ST_SetSRID(tabella2.geom, -1); Con la stessa tecnica puoi assegnare lo srid giusto alla tua tabella se ti sei accorta di averla caricata con SRID -1. Ovviamente devi prima eliminare il constraint sullo srid e poi ricrearlo. Meglio ancora guarda la funzione UpdateGeometrySRID() che sistema tutti i metadati oltre allo SRID delle geometrie. Buon lavoro Sig Il giorno ven, 16/12/2011 alle 13.32 +0100, Luca Casagrande ha scritto: > On 16/12/2011 12:57, PiaMic wrote: > > Voglio sostituire le geometrie di una tabella postgis con altre che > > provengono da uno shapefile. > > La tabella postgres non ha uno srid determinato, anzi, forza lo srid > > così > > > > CONSTRAINT enforce_srid_the_geom CHECK (srid(the_geom) = (-1)) > > > > Convertendo lo shapefile in una tabella postgis (tramite Open Jump) > > temporanea i poligoni passano con uno srid = 0. Quando faccio un > > join tra le due tabelle per fare un UPDATE sulla geometria postgis > > mi dà errore, non accettando lo srid. > > Premesso che al momento non posso cambiare le caratteristiche della > > tabella di destinazione, e devo mantenere questo srid=-1, come posso > > fare? E che differenza c'è tra srid = 0 e srid = -1? > > > > Prima ripulite la tabella con DELETE FROM nometabella e poi usate il > plugin di QGis per caricare lo shapefile impostando lo SRID che vi serve. > > Saluti > Luca > > -- > Luca Casagrande > "I love it when a plan comes together." > > _______________________________________________ > Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione > [hidden email] > http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss > Questa e' una lista di discussione pubblica aperta a tutti. > Non inviate messaggi commerciali. > I messaggi di questa lista non rispecchiano necessariamente > le posizioni dell'Associazione GFOSS.it. > 540 iscritti al 4.11.2011 _____________ PRIVACY Le informazioni contenute in questo messaggio sono riservate e confidenziali. Il loro utilizzo e' consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora Lei non fosse la persona a cui il presente messaggio è destinato, La invitiamo ad eliminarlo dal Suo Sistema e a distruggere le varie copie o stampe, dandone gentilmente comunicazione all’indirizzo mail del mittente. Ogni utilizzo improprio e' contrario ai principi del D.lgs 196/03 e alla legislazione europea (Direttiva 2002/58/CE). PRIVACY Le informazioni contenute in questo messaggio sono riservate e confidenziali. Il loro utilizzo e' consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora Lei non fosse la persona a cui il presente messaggio è destinato, La invitiamo ad eliminarlo dal Suo Sistema e a distruggere le varie copie o stampe, dandone gentilmente comunicazione all’indirizzo mail del mittente. Ogni utilizzo improprio e' contrario ai principi del D.lgs 196/03 e alla legislazione europea (Direttiva 2002/58/CE). _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 540 iscritti al 4.11.2011 |
In reply to this post by PiaMic
On Fri, Dec 16, 2011 at 12:57:34PM +0100, PiaMic wrote:
> Voglio sostituire le geometrie di una tabella postgis con altre che provengono da uno shapefile. > La tabella postgres non ha uno srid determinato, anzi, forza lo srid così > > CONSTRAINT enforce_srid_the_geom CHECK (srid(the_geom) = (-1)) > > Convertendo lo shapefile in una tabella postgis (tramite Open Jump) temporanea i poligoni passano con uno srid = 0. Quando faccio un join tra le due tabelle per fare un UPDATE sulla geometria postgis mi dà errore, non accettando lo srid. > Premesso che al momento non posso cambiare le caratteristiche della tabella di destinazione, e devo mantenere questo srid=-1, come posso fare? E che differenza c'è tra srid = 0 e srid = -1? SRID <= 0 equivale a "non so". Il valore ufficiale di questo "non so" e' sempre stato -1. In PostGIS-2.0 diventera' 0. Che versione di PostGIS stai usando, e che versione di OpenJump ? Perche' non puoi cambiare le caratteristiche della tabella di destinazione ? "non so" non e' un buon valore di SRID ... --strk; ,------o-. | __/ | Thank you for PostGIS-2.0 Topology ! | / 2.0 | http://www.pledgebank.com/postgistopology `-o------' _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 540 iscritti al 4.11.2011 |
Free forum by Nabble | Edit this page |