Feu de déclenchement de la mise à jour de columnA ou Colonneb ou ColumnC

J'ai le code pour activer un déclencheur uniquement sur une mise à jour d'une seule colonne spécifique. Le déclencheur est utilisé pour déclencher une fonction qui va soulever une postgres "informer" de l'événement, dont je suis à l'écoute et aurez besoin de tester et de valider la nouvelle de l'entrée des détails de. Il existe de nombreuses valeurs sur le account_details tableau qui pourrait être un changement qui ne nécessite pas de compte de valider, donc un déclencheur sur APRÈS la mise à JOUR uniquement (sans date) n'est pas bon.

    CREATE TRIGGER trigger_update_account_details
    AFTER UPDATE ON account_details
    FOR EACH ROW
    WHEN (OLD.email IS DISTINCT FROM NEW.email) 
    EXECUTE PROCEDURE notify_insert_account_details();

Mais je vous voulez tirer sur la gâchette si l'une des nombreuses colonnes de changement, quelque chose comme

WHEN (OLD.email IS DISTINCT FROM NEW.email OR 
OLD.username IS DISTINCT FROM NEW.username OR 
OLD.password IS DISTINCT FROM NEW.password) 

Mais OU n'est pas un mot clé valide pour un déclenchement. En essayant de recherche pour le mot clé à utiliser à la place de OU ne semble pas apporter quoi que ce soit en raison de la nature de la parole, OU 🙁

Comme je l'ai lu la documentation de 9.3, cela devrait fonctionner. Vous pouvez poster la version, et un message d'erreur?

OriginalL'auteur Martin | 2014-08-21