Fw: Triggers con argumentos

From: "antispam" <antispam(at)inegi(dot)gob(dot)mx>
To: <systemguards(at)yahoo(dot)com>
Cc: <mario_soto(at)venezolanadeavaluos(dot)com>, <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Fw: Triggers con argumentos
Date: 2004-11-08 16:36:26
Message-ID: 060101c4c5b1$1884b4d0$fd05140a@inegi.gob.mx
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


----- Original Message -----
From: <Symantec_Mail_Security_for_SMTP(at)inegi(dot)gob(dot)mx>
To: <systemguards(at)yahoo(dot)com>
Cc: <mario_soto(at)venezolanadeavaluos(dot)com>; <pgsql-es-ayuda(at)postgresql(dot)org>
Sent: Saturday, November 06, 2004 1:18 PM
Subject: Re: [pgsql-es-ayuda] Triggers con argumentos

Hola Jaime, gracias y voy a seguir tu consejo

Saludos

> Hola Mario,
>
> Lo primero que te voy a recomendar antes que te metas
> con el sistema de reglas es usar una funcion en vez de
> un trigger.
>
> CREATE OR REPLACE FUNCTION funcion_act_tabla2(..todos
> los parametros que quieras..) RETURNS VOID AS '
> declare
> begin
>
> insert into tabla1 values($1, $2, ....);
>
> update tabla2 set nombre = "el parametro que pasastes"
> where .. tus condiciones ..;
>
> end;
> 'LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT
> SECURITY INVOKER;
>
> Piensa en esta opcion primero.
>
> La opcion con el sistema de reglas implica crear una
> tabla con los campos del insert y los campos
> adicionales que necesites.
>
> y luego crear una regla de este tipo:
>
> create rule regla_para_el_insert AS
> ON INSERT TO tabla_nueva [WHERE ...]
> DO INSTEAD (
> INSERT into tabla1 VALUES (new.campo1, new.campo2
> ...);
> UPDATE tabla2 SET nombre = new.campo_para_update
> WHERE ....;
> )
>
> Si te fijas es lo mismo que usar una funcion pero tu
> solo te preocupas de hacer un insert con la funcion
> debes ejecutarla haciendo "select
> funcion(parametros);"
>
> Yo tuve un problema similar y sinceramente pienso que
> usar la funcion es mas facil, mas practico, etc., etc,
> etc.
>
> Atentamente,
> Jaime Casanova
>
> _________________________________________________________
> Do You Yahoo!?
> Informacin de Estados Unidos y Am rica Latina, en Yahoo! Noticias.
> Vistanos en http://noticias.espanol.yahoo.com
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Has buscado en los archivos de las listas de correo?
>
> http://archives.postgresql.org

---------------------------(end of broadcast)---------------------------
TIP 4: No hagas 'kill -9' a postmaster

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2004-11-08 16:53:52 Re: INSERT MULTIPLE CON TRANSACCIONES...
Previous Message antispam 2004-11-08 15:12:42 Fw: Triggers con argumentos