[Gfoss] Ancora problemi con oid postgis

Eugenio Trumpy frippe12573 a hotmail.com
Mar 22 Apr 2008 11:43:46 CEST


Buongiorno,
purtroppo mi trovo a ripresentare un problemino che avevo qualche giorno fa e che ancora purtroppo non sono riuscito a risolvere.
Nella bancadati su cui sto lavorando c'è una tabella spaziale e alcune altre semplici di attributi.
Ho la necessità di creare delle viste tra la tabella "geometrica" e quelle degli attributi.
La cosa strana è che per quasi tutte le tabelle sono siuscito a creare le viste per poi visualizzarele con qgis, mentre per un paio di tabelle 
non c'è verso, ottengo sempre il solito messaggio di errore:

La vista 'public.pozzi_condt'  non ha una colonna utilizzabile come chiave univoca.
Qgis richiede che la vista abbia una colo nna utilizzabile come chiave univoca. 
Tale colonna deve derivare da una tabella con una colonna di tipo int4 ed essere una chiave primaria, essere univoca, oppure una colonna di tipo oid PostgreSQL. Inoltre, al fine di avere maggiori performance la colonna dovrebbe essere anche indicizzata.
La vista selezionata ha queste colonne, nessuna di esse soddisfa le seguenti condizioni:
.....
'key' deriva da 'public.condt.key' e non è utilizzabile (il tipo è int4 e non è utilizzabile come vincolo)
....
'oid' deriva da 'public.condt.id_condt' e non è utilizzabile (il tipo è int4 e non è utilizzabile come vincolo)
'the_geom' deriva da 'public.pozzi_corr_news.the_geom' e non è utilizzabile (il tipo è geometry e non è utilizzabile come vincolo)
successivamente:
"public"."pozzi_condt" (the_geom) sql=GeometryType("the_geom") IN ('POINT','MULTIPOINT') è un layer non valido e non può essere caricato.

riassumendo:
key è la chiave primaria della tabella spaziale, serve a legare la stessa con tutte le tabelle attrributi,
oid invece è la chiave primaria delle varie tabelle attributi. La procedura che ho usato è stata identica per tutte le viste che ho creato.
Ho aggiunto, perchè non era presente, un oid tramite phppgadmin alle tab attributi, (ho notato però che con phppgadmin questo campo nuovo non viene visualizzato mentre con 
pgadmin si, e risulta perfettamente numerato con valori univoci), 
successivamente sempre con phppgadmin creo la vista utilizzando le 2 tabelle d'interesse (spaziale e non, selezionando il campo the_geom dalla prima),
e tutto sembra a posto, ma se visualizzo la vista con phppgadmin la tabella è formattata male, nel senso che c'è un campo senza intestazione...non so se è regolare...???...
con pgadmin ho tutte le intestazioni corrette compreso l'oid. Osservando bene quel campo, vedo che:
non c'è una numerazione completa degli oid, cosa che dovrebbe essere e in più un record è ripetuto 2 volte, infatti non essendo più univoco il campo non mi si visualizza tale vista 
in qgis.
Ho provato anche a reimportare la tabella e a rifare la vista  molte volte...

Qualcuno ha suggerimenti?


Eugenio
_________________________________________________________________
Vuoi diventare il numero 1 della community? Scarica il gadget!
http://votalospaces.spaces.live.com/


Maggiori informazioni sulla lista Gfoss