recursive trigger - Mailing list pgsql-general

From Mage
Subject recursive trigger
Date
Msg-id 404B259F.9010900@mage.hu
Whole thread Raw
Responses Re: recursive trigger
List pgsql-general
       Hi,

what's wrong with this?

---
create table test (id int, name text, parent int);
insert into test values (1,'a',1);
insert into test values (2,'b',1);
insert into test values (3,'c',1);

create or replace function test() returns trigger as '
begin
 raise info ''id: %, oldname: %'',old.id, old.name;
 if new.parent <> old.parent then
   update test set name = ''old'' where parent = old.parent;
 end if;
 return new;
end;
' language plpgsql;

create trigger test_trigger before update on test for each row execute
procedure test();

update test set parent = 2;
---

INFO:  id: 1, oldname: old
INFO:  id: 1, oldname: old
CONTEXT:  PL/pgSQL function "test" line 4 at SQL statement
INFO:  id: 2, oldname: old
CONTEXT:  PL/pgSQL function "test" line 4 at SQL statement
INFO:  id: 3, oldname: old
CONTEXT:  PL/pgSQL function "test" line 4 at SQL statement
UPDATE 0

-----

PgSQL 7.4.1

       Mage



pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: 7.4.1 upgrade issues
Next
From: Michael Meskes
Date:
Subject: Re: ECPG - bug in EXEC SQL WHENEVER NOT FOUND?