Re: Problema con triger

From: Mario Soto Cordones - Venezuela <msotocl(at)gmail(dot)com>
To: Luis Rodrigo Gallardo Cruz <rodrigo(at)nul-unu(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Problema con triger
Date: 2006-02-17 21:41:58
Message-ID: e9b17cde0602171341y5c109848k@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El día 17/02/06, Luis Rodrigo Gallardo Cruz <rodrigo(at)nul-unu(dot)com> escribió:
> On Fri, Feb 17, 2006 at 04:53:27PM -0400, Mario Soto Cordones - Venezuela wrote:
> > Una vez mas, esta es la funcion original la cual es llamada por un trigger::
> >
> > CREATE OR REPLACE FUNCTION "public"."verryfy_modelo" () RETURNS trigger AS
> > $body$
> > declare rec_activos record;
> > begin
> > select * into rec_activos from activos
> > where activos.co_empresa = old.co_empresa and
> > activos.co_modelo = old.co_modelo
> > LIMIT 1;
> >
> > IF FOUND THEN
> > RAISE EXCEPTION '% No se puede Eliminar ya que existen Activos Asociados';
> > END IF;
> > return rec_activos; ----> ACA RETORNO EL RECORD
> > end;
> > $body$
> > LANGUAGE 'plpgsql' VOLATILE RETURNS NULL ON NULL INPUT SECURITY INVOKER;
> >
>
> Y rec_activos es de tipo activos, pero el trigger debe regresar del tipo
> de la tabla en la que está instalado.
>
> --

OK,
pero lo que no entiendo es que es lo que debo retornar, ya que el
return que hago es rec_activos.

Y este es el trigger.

CREATE TRIGGER "tg_del_modelo" BEFORE DELETE
ON "public"."modelo" FOR EACH ROW
EXECUTE PROCEDURE "public"."verryfy_modelo"();

El trigger funciona, pero se cae en la funcion:

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2006-02-17 22:42:14 Re: Aclaratoria de puntos decimales
Previous Message José Fermín francisco ferreras 2006-02-17 21:41:33 postgres y Zeos