fkey + primary key does not work in current - Mailing list pgsql-hackers

From Tatsuo Ishii
Subject fkey + primary key does not work in current
Date
Msg-id 20000915205132T.t-ishii@sra.co.jp
Whole thread Raw
Responses Re: fkey + primary key does not work in current
List pgsql-hackers
It seems that foreign key does not work in current, if specified with
primary key definition. Take a look at following example(works in
7.0.2.):

test=# CREATE TABLE PKTABLE ( ptest1 int, ptest2 int, ptest3 int, ptest4 text, PRIMARY KEY(ptest1, ptest2, ptest3) );
NOTICE:  CREATE TABLE/PRIMARY KEY will create implicit index 'pktable_pkey' for table 'pktable'
CREATE
test=# CREATE TABLE FKTABLE ( ftest1 int, ftest2 int, ftest3 int, ftest4 int, primary key
(ftest1,ftest2,ftest3,ftest4), CONSTRAINT constrname3 FOREIGN KEY(ftest1, ftest2, ftest3) REFERENCES PKTABLE);
 
NOTICE:  CREATE TABLE/PRIMARY KEY will create implicit index 'fktable_pkey' for table 'fktable'
NOTICE:  CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s)
ERROR:  columns referenced in foreign key constraint not found.

However, if primary key definition is not used with fkey, it works.

test=# CREATE TABLE FKTABLE ( ftest1 int, ftest2 int, ftest3 int, ftest4 int, CONSTRAINT constrname3 FOREIGN
KEY(ftest1,ftest2, ftest3) REFERENCES PKTABLE);
 
NOTICE:  CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s)
CREATE

Any thoughts?
--
Tatsuo Ishii


pgsql-hackers by date:

Previous
From: Philip Warner
Date:
Subject: Re: current is broken
Next
From: Michael Meskes
Date:
Subject: Cannot compile