Foreign Key Problem - Mailing list pgsql-general

From Dennis Muhlestein
Subject Foreign Key Problem
Date
Msg-id 9fosb1$148o$1@news.tht.net
Whole thread Raw
Responses Re: Foreign Key Problem  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
List pgsql-general
Is This s bug:


create table A
(
        key varchar(20) not null primary key
);

create table B
(
        id serial not null primary key,
        col1 varchar(20) not null,
        col2 varchar(20) not null
);

alter table B create constraint fk_col1 foreign key ( col1 ) references A (
key ) on delete cascade on update cascade;

alter table B create constraint fk_col2 foreign key ( col2 ) references A (
key ) on delete cascade on update cascade;


SQL Creation and operation works fine.  In the case that one row in table B
where col1 = col2, if I update A.key, I'll get a referential integrity
violation??

ie: ERROR: fk_col1 referential integrity violation - key referenced from B
not found in A.

Is there a way to make this type of constraint work with the update?

If not, is there a way to create a constraint so that col1 != col2 is
inforced?


Thanks in advance..
Dennis

pgsql-general by date:

Previous
From: Somazx Interesting
Date:
Subject: pg_dumpall error
Next
From: Arcady Genkin
Date:
Subject: REPOST: redefining location of the socket file /tmp/.s.PGSQL.5432