SoloCodigo

Bases de Datos => Otras Bases de Datos => PostgreSQL => Mensaje iniciado por: leoandres en Jueves 7 de Diciembre de 2006, 17:56

Título: Sobre Triggers Update
Publicado por: leoandres en Jueves 7 de Diciembre de 2006, 17:56
Saludos. Si alguien me aclara.

Puedo escribir triggers que se activen solo cuando se actualiza cierta columna de la tabla  (UPDATE OF columna), pongo un ejemplo de T-SQL:

/*  AFTER UPDATE TRIGGER "TUA_MTO_ITEM_SOL_CHEQUE" FOR TABLE "SOLICITUD_CHEQUE_DETALLE"  */

CREATE TRIGGER TUA_MTO_ITEM_SOL_CHEQUE AFTER UPDATE OF MONTO1_CUENTA_EGRESO, MONTO2_CUENTA_EGRESO
ORDER 1 ON SOLICITUD_CHEQUE_DETALLE

REFERENCING NEW AS NUEVO OLD AS ANTERIOR FOR EACH ROW
BEGIN

UPDATE SOLICITUD_CHEQUE SET MONTO_SOLICITUD_CHEQUE = MONTO_SOLICITUD_CHEQUE +
                                                    (NUEVO.MONTO1_CUENTA_EGRESO + NUEVO.MONTO2_CUENTA_EGRESO) -
                                                    (ANTERIOR.MONTO1_CUENTA_EGRESO + ANTERIOR.MONTO2_CUENTA_EGRESO)
WHERE FACULTAD=NUEVO.FACULTAD AND
      DEPENDENCIA=NUEVO.DEPENDENCIA AND
      NUMERO_SOLICITUD_CHEQUE=NUEVO.NUMERO_SOLICITUD_CHEQUE

END