Re: Ayuda con triggers

From: Jaime Casanova <systemguards(at)yahoo(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Ayuda con triggers
Date: 2004-11-18 07:39:44
Message-ID: 20041118073944.62709.qmail@web50009.mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

--- Joan Manuel Ventura <joan_mvf(at)yahoo(dot)com>
escribió:
> Hola a todos, soy nuevo en la utilizacion de
> triggers
> y ahora me encuentro obligado a utilizarlos, les
> explico k quiero hacer.
>
> Ej: tengo esta tabla
> create table banca(
> id_banca int2 UNIQUE NOT NULL
> default(nextval('id_banca_seq')),
> dewcripcion varchar(30) Not Null,
> demas campos
> .......
> )
>
> quiero que se ejecute un trigger despues de cada
> Insert
>
> ej: este trigger
>
> CREATE FUNCTION fbanca(int) Returns trigger As
> 'CREATE
> SEQUENCE id_banca_$1;' LANGUAGE SQL;
>
> CREATE TRIGGER tbanca() AFTER INSERT ON banca FOR
> EACH
> ROW EXECUTE PROCEDURE fbanca(valor);
>
> donde dice valor quiero enviar el ID de la banca
> creada a la funsion y que la funcion cree la
> secuencia
> id_banca_valor.

prueba currval para obtener el id de la banca
asignado.
http://www.postgresql.org/docs/7.4/static/functions-sequence.html

>
> Ahi tengo un par de problemas no se como mandarle el
> ID de la banca creada y como crear la funsion,
> porque
> estaba tratando de hacer la funcion y me dice que el
> Language Sql no devuelve trigger.

Como ya te indicaron necesitas recrear la funcion en
plpgsql, no le vas a poder pasar el valor como
parametros porque las funciones de trigger en plpgsql
solo aceptan argumentos que sean cadenas de caracteres
constantes (es decir, siempre la misma cadena para el
mismo trigger).

En todo caso en el trigger puedes hacer uso de la
funcion currval para saber cual es el ultimo valor
asignado.

>
> bueno eso es todo, espero que me den una ayudita.
>

Eso tratamos

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

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Fernando Aguada 2004-11-18 11:18:33 Re: Ya no se que hacer!!!!
Previous Message Jaime Casanova 2004-11-18 07:28:24 Re: Ya no se que hacer!!!!