Forein Key Problem

From: Dennis <dennis(at)zserve(dot)com>
To: pgsql-sql(at)postgresql(dot)org
Subject: Forein Key Problem
Date: 2001-06-07 21:43:18
Message-ID: 9foshm$148o$2@news.tht.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

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

Browse pgsql-sql by date

  From Date Subject
Next Message David BOURIAUD 2001-06-08 07:02:12 Re: Re: About i8n
Previous Message Alex Pilosov 2001-06-07 19:51:38 Re: Getting row with id=max(id)