Vous n'êtes pas identifié(e).

#1 09/01/2014 13:11:06

ayat
Membre

Création trigger Version 8.4

J'essaie de créer un trigger dans la version 8.4 de postgresql, comme :

CREATE TRIGGER trigger_name
    BEFORE UPDATE OF colonne ON nom table_name
    FOR EACH ROW
    WHEN (OLD.colonne IS DISTINCT FROM NEW.colonne )
    EXECUTE PROCEDURE procedure_name();


Mais, il m'affiche l'erreur suivante :

ERREUR:  erreur de syntaxe sur ou près de « OF »
LINE 2:     BEFORE UPDATE OF colonne ON table_name
                          ^

********** Erreur **********

ERREUR: erreur de syntaxe sur ou près de « OF »
État SQL :42601
Caractère : 51


Merci.

Hors ligne

#2 09/01/2014 13:21:50

rjuju
Administrateur

Re : Création trigger Version 8.4

Bonjour,

il s'agit d'une fonctionnalité ajoutée dans la version 9.0 de postgres, comme indiqué dans la documentation :

L'instruction CREATE TRIGGER de PostgreSQL™ implante un sous-ensemble du standard SQL. Les fonctionnalités manquantes sont :
    SQL permet aux déclencheurs de se lancer dans des mises à jour de colonnes spécifiques (c'est-à-dire AFTER UPDATE OF col1, col2).
...

voir http://docs.postgresql.fr/8.4/sql-createtrigger.html.

Hors ligne

Pied de page des forums