Foreign Key can't refer to one of 2 primary keys

From: "Reuben D(dot) Budiardja" <techlist(at)voyager(dot)phys(dot)utk(dot)edu>
To: pgsql-general(at)postgresql(dot)org
Subject: Foreign Key can't refer to one of 2 primary keys
Date: 2003-06-21 21:04:19
Message-ID: 200306211704.19123.techlist@voyager.phys.utk.edu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi all,
Suppose I have a table with more than one primary key. If I create another
table and I want one of the column of that second table REFERENCE to one of
the primary key of the first table, how do I do that?

eg
CREATE TABLE test
(
col1 VARCHAR(20),
col2 VARCHAR(20),
col3 VARCHAR(20),
PRIMARY KEY (col1,col2,col3)
);

CREATE TABLE myforeign
(
mycol1 VARCHAR(20) REFERENCES test,
mycol2 VARCHAR(25),
PRIMARY KEY(mycol1)
);

This gave me

ERROR: number of key attributes in referenced table must be equal to foreign
key
Illegal FOREIGN KEY definition references "test"

I don't se any obvious reason why I cannot do that. Any help?

Thanks.
--
Reuben D. Budiardja

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Gianni Mariani 2003-06-21 21:49:22 Re: Foreign Key can't refer to one of 2 primary keys
Previous Message Josh Berkus 2003-06-21 18:46:41 Re: interesting PHP/MySQL thread