Re: [Pgsql-ayuda] triggers y funciones.

From: Alvaro Herrera Munoz <alvherre(at)dcc(dot)uchile(dot)cl>
To: "DAVID A(dot) GATICA GONZALEZ" <dgatica(at)surnet(dot)cl>
Cc: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: [Pgsql-ayuda] triggers y funciones.
Date: 2003-06-11 18:35:54
Message-ID: 20030611183554.GB9652@dcc.uchile.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Sat, Jun 07, 2003 at 09:00:46PM -0400, DAVID A. GATICA GONZALEZ wrote:

> estoy recien empezando a trabajar con postgreSQL,

Bienvenido!

> y necesito si
> tienen ejemplos de triggers y funciones.
> lo que necesito hacer es :
> despues que se inserte un registro en una tabla ( ejemplo tabla_X ),
> automaticamente se inserten dos registros en otra tabla ( tabla _Y);
> eso se puede hacer ..?

Claro.

Algo del estilo

CREATE TABLE x (columna_1 int, columna_2 int);
CREATE TABLE y (valor int, valor_2 int);

CREATE or replace FUNCTION inserta_en_tabla_y () RETURNS trigger AS
'BEGIN
INSERT INTO Y (valor) VALUES (new.columna_1);
INSERT INTO Y (valor_2) VALUES (new.columna_2);
RETURN new;
END;' LANGUAGE plpgsql;

CREATE TRIGGER mi_trigger AFTER INSERT ON X
FOR EACH ROW EXECUTE PROCEDURE inserta_en_tabla_y();

INSERT INTO x VALUES (128, 256);

SELECT * FROM y;
valor | valor_2
-------+---------
128 |
| 256
(2 rows)

Para mayor referencia, la documentacion en www.postgresql.org/docs
es tu mejor alternativa.

--
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
"Acepta los honores y aplausos y perderas tu libertad"

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera Munoz 2003-06-11 18:38:11 Re: [Pgsql-ayuda] Autenticacion fallida
Previous Message Alvaro Herrera Munoz 2003-06-11 18:15:10 Re: [Pgsql-ayuda] Se puede hacer DBLink?