Codage trigger

Fermé
Dbl35 Messages postés 71 Date d'inscription mardi 19 novembre 2013 Statut Membre Dernière intervention 11 juillet 2015 - 20 janv. 2014 à 13:29
Dbl35 Messages postés 71 Date d'inscription mardi 19 novembre 2013 Statut Membre Dernière intervention 11 juillet 2015 - 4 févr. 2014 à 11:12
Bonjour,

je découvre les triggers postgresql et n'arrive pas à les faire fonctionner.
Voila ma difficulté ( je suis débutant):

je dois multiplier 2 données d'une même table pour stocker leresultat dans cette même table.

ma table = table_origine
1ére donnée = donnee_1 (numeric)
2iéme donnée = donnee_2 (character varying)
3ieme donnée = resultat ( numeric)


Mon code

DECLARE
donnee_ 1 CURSOR (table_origine integer) IS SELECT donnee_1
FROM table_origine
WHERE art_int_id = table_origine;

donnee_2 CURSOR (table_origine varchar) IS SELECT donnee_2
FROMtable_origine
WHERE art_int_id = table_origine;

resultat CURSOR (table_origine numeric) IS SELECT resultat
FROM article
WHERE art_int_id = table_origine;

BEGIN
-- trigger sur popup

IF (TG_OP = 'INSERT' OR TG_OP = 'UPDATE') AND (TG_OP = 'INSERT') AND (NEW.donnee_1 IS NOT NULL)
THEN
NEW.resultat=(NEW.donnee_1*NEW.donnee_2);
END IF;
RETURN NEW;
END;

le calcul doit être updater dés qu'une des données d'entrée changent

j'en ai d'autres à faire mais une fois celui-là compris, je réappliquerai la méthode.

pouvez vous m'indiquer mes erreurs ?

merci par avance

1 réponse

Dbl35 Messages postés 71 Date d'inscription mardi 19 novembre 2013 Statut Membre Dernière intervention 11 juillet 2015
4 févr. 2014 à 11:12
resolu
0