Re: Creating a foreign key on the Union of two tables - Mailing list pgsql-sql

From Rod Taylor
Subject Re: Creating a foreign key on the Union of two tables
Date
Msg-id 1049734135.40144.17.camel@jester
Whole thread Raw
In response to Creating a foreign key on the Union of two tables  (saads@umich.edu (Saad Saeed))
List pgsql-sql
On Sun, 2003-04-06 at 17:53, Saad Saeed wrote:
> I have 2 tables "A" and "B" in mySQL. They both have an attribute 'id'
> which is unique between the 2 tables. I want the union of these 2
> attributes to be a foreign key in a 3rd table "C". How do I specify
> this constraing in sql (mySQL) in table C? And for complex reasons I
> cannot merge the 2 tables A and B.

Can't say for MySQL (since this is a PostgreSQL list!!!!!), but creating
a foreign key like that to 2 different tables is against spec because
one cannot create a unique constraint across 2 tables.

That said, you could create a set of pl/pgsql functions that can imitate
what a foreign key does and will work in the situation you describe --
if you're using PostgreSQL.

--
Rod Taylor <rbt@rbt.ca>

PGP Key: http://www.rbt.ca/rbtpub.asc

pgsql-sql by date:

Previous
From: "David Olbersen"
Date:
Subject: Re: Difficult query (for me)
Next
From: Bruno Wolff III
Date:
Subject: Re: Creating a foreign key on the Union of two tables