a trigger question

From: "Zhou, Lixin" <LZhou(at)illumina(dot)com>
To: "'pgsql-general(at)postgresql(dot)org'" <pgsql-general(at)postgresql(dot)org>
Subject: a trigger question
Date: 2002-06-04 20:21:36
Message-ID: 6EDF654BC7BFE648AB2E734727E7078DAEC76D@illumina24.illumina.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Give two tables A and B. B has a field that references A's primary key.

For example:

create table A(
i int not null,
s text,
primary key(i));

create table B(
i int not null,
s text,
primary key(i),
foreign key(i) references A(i));

I like to create a trigger on table A. When a new row is inserted into A
(ex: with i = 5), I like to have the trigger inserts a new row in table B
whose field "i" has the same value as that of the A's (ex: i = 5).

As I do this, the error message is something like: "referential integration
violation - key referenced in B not found in A". This makes sense to me
since at the time the trigger inserts in B, A's new row is not visible yet
-- not committed yet.

How can I solve this problem using trigger?

Thanks!

Lixin Zhou

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Glen Parker 2002-06-04 22:25:16 Char = varchar
Previous Message Ron Snyder 2002-06-04 19:32:29 continual growth of pg_largeobjects and another table?