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
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 |