Re: Problema con Funcion y Trigger

From: Martín Marqués <martin(at)bugs(dot)unl(dot)edu(dot)ar>
To: pgsql-es-ayuda(at)postgresql(dot)org
Cc: "P(at)blo Villad(at)" <andresv50(at)hotmail(dot)com>
Subject: Re: Problema con Funcion y Trigger
Date: 2005-07-27 20:47:06
Message-ID: 200507271747.07833.martin@bugs.unl.edu.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El Mié 27 Jul 2005 17:33, P(at)blo Villad@ escribió:
>
> tengo una tabla llamada cafe que posee un campo
> el cual debe disminuirse en uno cada vez que se ejecute
> una operacion de insertar sobre la tabla.
>
> El problema es que para poder realizar esta operacion
> necesito un parametro de la insercion.
>
>
> eh intentado hacerlo con un trigger pero la verdad no
> se si sea la manera mas adecuada.
>
> CREATE OR REPLACE FUNCTION descuentox(varchar) RETURNS TRIGGER AS
> $descuento_cafex1$
>
> BEGIN
>
> IF (TG_OP = 'INSERT') THEN
>
> UPDATE cafe SET descuento=descuento-1 where nombre_cafe=$1;
> RETURN NEW;
> END IF;
> RETURN NULL;
>
> END;
>
> $descuento_cafex1$ LANGUAGE plpgsql;
>
> CREATE TRIGGER cafe_descuento
> AFTER INSERT ON cafe
> FOR EACH ROW EXECUTE PROCEDURE descuentox(varchar);

A ver si aun tengo esto fresco. ;-)

CREATE OR REPLACE FUNCTION descuentox RETURNS TRIGGER AS
$descuento_cafex1$

BEGIN
IF (TG_OP = 'INSERT') THEN
UPDATE cafe SET descuento=descuento-1 where
nombre_cafe=NEW.nombre_cafe;
RETURN NEW;
END IF;
RETURN NULL;
END;

$descuento_cafex1$ LANGUAGE plpgsql;

CREATE TRIGGER cafe_descuento
AFTER INSERT ON cafe
FOR EACH ROW EXECUTE PROCEDURE descuentox;

Prueba con eso.

--
17:44:51 up 25 days, 2:30, 1 user, load average: 1.20, 1.09, 0.96
-------------------------------------------------
Lic. Martín Marqués | SELECT 'mmarques' ||
Centro de Telemática | '@' || 'unl.edu.ar';
Universidad Nacional | DBA, Programador,
del Litoral | Administrador
-------------------------------------------------

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2005-07-27 20:58:13 Re: Problema con Funcion y Trigger
Previous Message Mario Jiménez Carrasco 2005-07-27 20:36:34 Re: Consulta fuera de topico