Message posté par : JP LLORENS
----------------------------------------
Bonjour.
Comme c'est la table nom qui lance le trigger ET qui est actualisée, je pense
qu'il faut plutôt faire un trigger BEFORE (AFTER sera utilisé pour mettre à jour une
autre table par exemple).
Ensuite :
-----------------
Code :
CREATE OR REPLACE FUNCTION maj_nom()
RETURNS trigger AS
$BODY$
DECLARE
var_zone record; /* déclaration d'une variable de type record (liste)*/
BEGIN
IF TG_OP = 'UPDATE' or TG_OP='INSERT' THEN
select toponyme,nature,cleabs FROM zone WHERE st_within(NEW.geom, zone.geom) into
var_zone;
NEW.graphie = var_zone.toponyme;
NEW.nature=var_zone.nature;
NEW.cleabs = var_zone.cleabs;
END IF;
return NEW;
END;
$BODY$
LANGUAGE plpgsql;
-----------------
Sans l'avoir tester, je pense que c'est grosso modo la solution
Cordialement
JP
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=345274#p345274
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net