Hola
Estoy creando un trigger sobre una tabla que se llena como resultado de una réplica que se realiza utilizando slony1 versión 2.2.1. La tabla se actualiza como resultado de la réplica pero el trigger nunca se dispara. El trigger está puesto para que se ejecute sobre las sentencias INSERT, UPDATE y DELETE. Aquí les dejo la sentencia de creación del trigger CREATE TRIGGER tg_sync_nrol AFTER INSERT OR UPDATE OR DELETE ON _sync.nrol FOR EACH STATEMENT EXECUTE PROCEDURE _sync.ftg_sync_nrol(); y el código de la función que ejecuta CREATE OR REPLACE FUNCTION _sync.ftg_sync_nrol() RETURNS trigger AS $BODY$ BEGIN IF (TG_OP = 'INSERT') THEN INSERT INTO nrol (idrol, rol, description) VALUES (NEW.idrol, NEW.rol, ''); RETURN NEW; ELSIF (TG_OP = 'UPDATE') THEN IF OLD.idrol != NEW.idrol OR OLD.rol != NEW.rol THEN UPDATE nrol SET (idrol, rol) = (NEW.idrol, NEW.rol) WHERE idrol = OLD.idrol; END IF; RETURN NEW; ELSIF (TG_OP = 'DELETE') THEN DELETE FROM nrol WHERE idrol = OLD.idrol; RETURN OLD; END IF; RETURN NULL; END; $BODY$ Saludos ________________________________________________________________________________________________ III Escuela Internacional de Invierno en la UCI del 17 al 28 de febrero del 2014. Ver www.uci.cu