NEW es valido en INSERT Y UPDATE
OLD es valido en UPDATE Y DELETE
con esta función puede probar los valores para cualquier tabla.
CREATE OR REPLACE FUNCTION tr_datos_d()
RETURNS trigger AS
$BODY$
DECLARE
BEGIN
IF TG_OP = 'INSERT' THEN
RAISE NOTICE 'INSERT NEW %',NEW;
RETURN NEW;
END IF;
IF TG_OP = 'UPDATE' THEN
RAISE NOTICE 'UPDATE NEW %',NEW;
RAISE NOTICE 'UPDATE OLD %',OLD;
RETURN NEW;
END IF;
IF TG_OP = 'DELETE' THEN
RAISE NOTICE 'DELETE OLD %',OLD;
RETURN OLD;
END IF;
END;$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
El 07/11/2012 04:14 p.m., Jaime Casanova escribió:
2012/11/7 Juan <[email protected]>:
Jaime
Lo extraño es que para hacer el test yo use update
por lo que entiendo update manda inicializado el New.
lo raro es que ambos new y old estan en null.
cualquier idea sera agradecida
y como determinas que NEW y OLD vienen en null?
te da algun error?
--
Jaime Casanova www.2ndQuadrant.com
Professional PostgreSQL: Soporte 24x7 y capacitación
Phone: +593 4 5107566 Cell: +593 987171157
-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda
-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda