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 > Gfoss@lists.gfoss.it > 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 Gfoss@lists.gfoss.it 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