1 foreign key to 2 different tables? - Mailing list pgsql-general

From Ryan Riehle
Subject 1 foreign key to 2 different tables?
Date
Msg-id 000001c42fad$5350abe0$0302a8c0@buildways
Whole thread Raw
In response to Re: One or Both Foregin Keys  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: 1 foreign key to 2 different tables?
Re: 1 foreign key to 2 different tables?
List pgsql-general
Hi,

I have a key structure like so:

 a                c              b
+----------+    +---------+    +----------+
| PriKey1  |--->| ForKey  |<---| PriKey2  |
|          |    | Flag    |    |          |
+----------+    +---------+    +----------+

...where c.ForKey is a value from PriKey1 OR PriKey2, which are different
values.  All fields have the same data type; a.PriKey1 and b.PriKey2 are
sequences. How does one enfore referential integrity in this structure so
that c.ForKey references a.PriKeya when Flag is True or references b.PriKey2
when Flag is False? Looked pretty hard through the lists and on Google last
night with no luck :(

  -Ryan Riehle
   http://www.buildways.com

KEYWORDS: one foreign key, multiple primary keys, multiple tables,
generalization, superclass, subclass, constraint


pgsql-general by date:

Previous
From: victor
Date:
Subject: users rights per table
Next
From: Mike Nolan
Date:
Subject: Re: users rights per table