From: | Jaime Casanova <systemguards(at)yahoo(dot)com> |
---|---|
To: | "Mario A(dot) Soto Cordones" <mario_soto(at)venezolanadeavaluos(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Triggers con argumentos |
Date: | 2004-11-06 08:05:03 |
Message-ID: | 20041106080503.72898.qmail@web50009.mail.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
--- "Mario A. Soto Cordones"
> Inicialmente la función gatillada por el trigger es
> esta.
>
> CREATE OR REPLACE FUNCTION funcion_act_tabla2" ()
> RETURNS trigger AS'
> declare
> QRY varchar := '''';
> begin
> QRY := ''update tabla2 set tabla2.nombre = '''' ||
> quote_literal(NEW.nb_nombre) || ''''
> where tabla2.empresa= tabla1.co_empresa and
> tabla2.filial =
> tabla1.co_filial and tabla2.codigo =
> tabla1.nu_activo_fijo'';
>
> execute QRY;
> return NEW;
> end;
> 'LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT
> SECURITY INVOKER;
Hola,
como veras aun en la lista en ingles te daran la misma
respuesta que te hemos dado, pero nuestro objetivo es
ayudarte para eso necesitamos que seas mas claro sigo
sin entender por que crees que necesitas que el
trigger tenga parametros variables.
Por lo que veo haces el update en tabla2 basandote en
el update de tabla1. aunque me parece que la funcion
esta mal escrita, deberia ser algo como:
CREATE OR REPLACE FUNCTION funcion_act_tabla2()
RETURNS trigger AS '
begin
update tabla2 set nombre = NEW.nb_nombre
where empresa = NEW.co_empresa
and filial = NEW.co_filial
and codigo = NEW.nu_activo_fijo;
return NEW;
end;
'LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT
SECURITY INVOKER;
Si aun piensas que necesitas usar parametros variables
existe un truco que te puede servir, pero implica
complicarte un poco la vida con el sistema de reglas
de postgres (el sistema de reglas de postgres es el
que facilita las vistas y las vistas actualizables,
pero NO es standard. es un invento de postgres).
Si quieres avisame y te explico que se puede hacer,
pero recuerda que si existe la posibilidad de que
vayas a migrar a otra DBMS esto no es aconsejable por
que tendras el mismo problema.
Atentamente,
Jaime Casanova
_________________________________________________________
Do You Yahoo!?
Información de Estados Unidos y América Latina, en Yahoo! Noticias.
Visítanos en http://noticias.espanol.yahoo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Mario A. Soto Cordones | 2004-11-06 14:58:31 | Re: Triggers con argumentos |
Previous Message | Carlos Chavez Herrera | 2004-11-06 01:04:14 | Re: conexiones |