Per quale ragioni fai uso di un trigger anziche' una query di update ?
Il 19 luglio 2015 18:02, <alessandro.ci...@gmail.com> ha scritto: > Ciao a tutti, > mi sono arenato su un problema cui non riesco a trovare una soluzione… > Vorrei estrarre alcuni dati da una copertura e passarli ai campi di una > tabella puntuale, in base alla posizione di nuovi punti che inserisco, > ossia nel caso specifico passare il codice provincia e comune ai nuovi punti > inseriti in una tabella “sito_puntuale”. I dati comune e provincia sono su > una tabella spaziale “am_com”. Il tutto è in un database PGsql. > Come in precedenza pensavo di risolvere il problema con un trigger, e quindi > ho creato la seguente funzione sfruttando ST_Wtithin di postgis: > > CREATE OR REPLACE FUNCTION indagini.cal_idn() > RETURNS trigger AS > $BODY$DECLARE > cod character(6); > BEGIN > -- codcom da public.am_com > cod = codcom FROM public.am_com AS c,indagini."Sito_Puntuale" AS s WHERE > (ST_Within(NEW.the_geom,c.geom)); > -- calcola ubicazione_prov e ubicazione_com > NEW.ubicazione_prov = substr(cod, 1, 3); > NEW.ubicazione_com = substr(cod, 4, 3); > RETURN NEW; > END; > $BODY$ > LANGUAGE plpgsql VOLATILE > COST 100; > ALTER FUNCTION indagini.cal_idn() > OWNER TO postgres; > GRANT EXECUTE ON FUNCTION indagini.cal_idn() TO public; > GRANT EXECUTE ON FUNCTION indagini.cal_idn() TO postgres; > > Purtroppo quando però vado a salvare mi viene restituito il seguente > messaggio di errore: > > Could not commit changes to layer Sito_Puntuale > > Errors: ERROR: 1 feature(s) not added. > > Provider errors: > > PostGIS error while adding features: ERRORE: la query "SELECT codcom FROM > public.am_com AS c,indagini."Sito_Puntuale" AS s WHERE (ST_Within( $1 > ,c.geom))" ha restituito più di una riga > > CONTEXT: funzione PL/pgSQL "cal_idn" riga 5 a assegnazione > > > Il tutto funziona solo con il 1° punto inserito in una tabella vuota. Mi > sembra di aver capito che il problema risieda nel fatto che la funzione > ST_Within considera tutte le geometriepresenti nella tabella “Sito_puntuale” > e non solo la NEW…. > > Qualche buon anima mi saprebbe aiutare? > > Grazie in anticipo > > > Alessandro Ciali > > Da: Luca Lanteri > Data invio: lunedì 13 luglio 2015 09:21 > A: Alessandro Ciali > Cc: GFOSS.it > > CIao Alessandro, > grazie mille per la disponibilità. > > Non ti preoccupare, tutto quello che vedi è stato fatto da autodidatti con > conoscenze minime di programmazione, e proprio per questo che è ancora più > importante unire forze e le competenze. > In Piemonte diversi professionisti hanno iniziato ad utilizzare questi > strumenti (mi pare di capire con soddisfazione) per realizzare i propri > approfondimenti di microzonazione sismica con QGIS e stanno svolgendo un bel > lavoro di testing. > > A disposizione per qualsiasi chiarimento. > a presto > Luca > > > Il giorno 11 luglio 2015 17:46, Alessandro Ciali > <alessandro.ci...@gmail.com> ha scritto: >> >> >> >> Sarei ben lieto di partecipare al miglioramento, a che non sono un genio >> della programmazione .a piuttosto un autodidatta coatto. Intanto scarichero' >> il tutto dal sito dell'ARPA per vedere se e come il mio lavoro possa >> integrare ciò che è stato fatto. Lavorando in parte nel campo della geologia >> per la pianificazione territoriale, ma lavorando prev. In toscana, ho >> sviluppato librerie di simboli che si attengono alle specifiche di questa >> regione; non mi sembra di aver trovato sul sito della RT librerie specifiche >> per QGIS, io le condividerei volentieri; anzi visto che alcuni membri di RT >> partecipa a questa lista, potrebbero, se sono interessati, a darmi >> informazioni in merito. Per adesso grazie per le dritte, spero di poter >> contribuire. Saluti a tutti >> >> Inviato da Samsung Mobile. >> >> > > > _______________________________________________ > Gfoss@lists.gfoss.it > 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. > 750 iscritti al 18.3.2015 -- ----------------- Andrea Peri . . . . . . . . . qwerty àèìòù ----------------- _______________________________________________ Gfoss@lists.gfoss.it 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. 750 iscritti al 18.3.2015