check source of trigger

From: "wit" <microx(at)hotpop(dot)com>
To: pgsql-sql(at)postgresql(dot)org
Subject: check source of trigger
Date: 2002-09-20 08:25:14
Message-ID: amem61$1j4o$1@news.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hello,

I have a question about trigger. I have tables with the following structure:

create table A (
e_codeA char(5) default '' not null,
n_codeA varchar(20) default '' not null,
constraint A_pkey primary key ( e_codeA )
);

create table B (
e_codeB char(5) default '' not null,
e_codeA char(5) default '' not null
constraint e_codeA_ref references A( e_codeA )
on delete cascade on update cascade,
n_codeB varchar(20) default '' not null,
constraint B_pkey primary key ( e_tranB, e_codeA )
);

I have trigger and procedure on table B to capture any change and insert
into table logB:
create trigger trigger_b before insert or update or delete on B for each
row execute procedure log_change();

When I update e_codeA in table A, the constrain trigger will update e_codeA
in B. My trigger, trigger_b, also was trigged and procedure will record
change into table logB too.
How to write a code in my db procedure to check whether the procedure was
called by normal SQL or was called by cascade trigger.

Regards,
wit

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Seb 2002-09-20 08:54:55 Date/Time types
Previous Message Ajit Aranha 2002-09-20 06:09:16 Null not equal to '' (empty)