[Pgsql-ayuda] triggers
Martin Marques
martin@bugs.unl.edu.ar
Tue, 23 Dec 2003 17:21:17 -0300
El Mar 23 Dic 2003 16:56, Guti=E9rrez Cuberos Tania Milena escribi=F3:
> Hola Amigos de postgres
>=20
> Necesito pasar un trigger hecho en oracle a postgres:
>=20
>=20
>=20
> CREATE OR REPLACE TRIGGER TR_I_AUD_RECIBIDO
> AFTER INSERT ON RECIBIDO
> FOR EACH ROW
> BEGIN
> INSERT INTO AUD_RECIBIDO (
> RECI_ID, RECI_ASUNTO, RECI_ESTADO, RECI_FECHA, RECI_NOMBREMENSAJE,
> RECI_SUBPATH, RECI_TAMANO, RECI_REGISTRADOPOR, RECI_FECHACAMBIO,ADRE_ID,
> CUEN_ID, CUEN_IDRECIBIDO, RECI_OPERACION) VALUES (
> :new.RECI_ID, :new.RECI_ASUNTO, :new.RECI_ESTADO, :new.RECI_FECHA,
> :new.RECI_NOMBREMENSAJE, :new.RECI_SUBPATH, :new.RECI_TAMANO,
> :new.RECI_REGISTRADOPOR, :new.RECI_FECHACAMBIO, :new.ADRE_ID,
> :new.CUEN_ID, :new.CUEN_IDRECIBIDO, 'I');
> END;
>=20
> Existe dos tablas: RECIBO Y LA AUD_RECIBO
Hacelo en dos partes.
Crea una funcion que devuelva un tipo de dato TRIGGER y no tenga argumentos=
=2E=20
Dicha funcion deberia hacer lo que se realiza entre el BEGIN y el END.
Cuando creas el trigger con las misma reglas, le decis que ejecute dicha=20
funcion.
Mira el manual de PostgreSQL:
http://www.postgresql.org/docs/current/interactive/triggers.html
http://www.postgresql.org/docs/current/interactive/xplang.html
=2D-=20
select 'mmarques' || '@' || 'unl.edu.ar' AS email;
=2D----------------------------------------------------------------
Mart=EDn Marqu=E9s | mmarques@unl.edu.ar
Programador, Administrador, DBA | Centro de Telem=E1tica
Universidad Nacional
del Litoral
=2D----------------------------------------------------------------