trigger para crear trigger

From: "Manuel A(dot) Estevez Fernandez" <stvzito(at)gmail(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: trigger para crear trigger
Date: 2009-03-25 17:10:37
Message-ID: 49CA658D.7050203@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola
Me gustaria saber como puedo definir como un trigger sobre una tabla
que cuando inserte cierto valor en una columna este cree el otro
trigger que va a actuar sobre otra tabla, y una vez que haga un update a
la primera tabla, el trigger elimine a otra funcion. Ya tengo definido
el trigger que quiero crear y destruir es el siguiente :

/*CREATE OR REPLACE FUNCTION actualiza_marbete()
RETURNS "trigger" AS
$BODY$

DECLARE
inventario integer;
mueble smallint;
marbete smallint;

BEGIN
IF(TG_OP='INSERT') THEN
mueble = (SELECT max(id_mueble) FROM marbetes WHERE
id_inventario=inventario AND id_sucursal=NEW.sucursal AND
id_articulo=NEW.id_articulo);
marbete = (SELECT max(id_marbete) FROM marbetes WHERE
id_inventario=inventario AND id_sucursal=NEW.sucursal AND
id_articulo=NEW.id_articulo);
update marbetes SET cantidad=((SELECT cantidad FROM marbetes
WHERE id_articulo=NEW.id_articulo AND id_mueble=mueble AND
id_sucursal=NEW.sucursal AND id_marbete=marbete AND
id_inventario=inventario) - NEW.cantidad ) WHERE
id_articulo=NEW.id_articulo AND id_mueble=mueble AND
id_sucursal=NEW.sucursal AND id_marbete=marbete AND
id_inventario=inventario;
END IF;
END IF;

END;

$BODY$
LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION actualiza_marbete()*/

El cual actua sobre la tabla de ventas. El otro trigger que creara a
este deberá actuar sobre la tabla de inventario que al abrir uno nuevo
(insert) cree la otra funcion y cuando lo cierre (update) la mate.
Disculpen si tengo algun error en la programacion de esta funcion, soy
todavia un novato con el manejo de base de datos y mas en posgresql.

Saludos
Manuel A. Estevez Fernandez

P.D. la version que estoy usando de postgresql es 8.1.11

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message juan 2009-03-25 18:21:28 Re: trigger para crear trigger
Previous Message fa sanchez cabo 2009-03-25 17:00:31 RE: [pgsql-es-ayuda] Necesito ayuda en la instalción de Psycopg2