From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Felipe de Jesús Molina Bravo <felipe(dot)molina(at)inegi(dot)gob(dot)mx> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: funcionamiento diferente en triggers |
Date: | 2007-01-30 16:37:11 |
Message-ID: | 20070130163711.GH2303@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Felipe de Jesús Molina Bravo escribió:
> create or replace function f_lugar() returns trigger as '
> begin
> if TG_OP = ''INSERT'' THEN
> update producto set contador = contador + 1 where
> idp = new.idp;
> return new;
> ELSIF TG_OP = ''DELETE'' THEN
> update producto set contador = contador - 1 where
> idp = old.idp;
> return old;
> end if;
** > return null;
> end;
> ' language 'plpgsql';
La linea con los asteriscos debe ser "return new". Si haces RETURN
NULL, el trigger tiene el efecto que mencionas: anula el efecto del
UPDATE. No entiendo por que "funcionaba" en 7.3.
--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.
From | Date | Subject | |
---|---|---|---|
Next Message | Alejandro D. Burne | 2007-01-30 16:52:38 | Re: Distintos planes de ejecución |
Previous Message | Marcos Renedo | 2007-01-30 16:34:11 | tablespace |