On Fri, Sep 02, 2005 at 04:43:15PM +0300, Achilleus Mantzios wrote:
> O Jerome Alet ?????? ???? Sep 2, 2005 :
> 
> > I've got 4 tables :
> > 
> > CREATE TABLE tableA (id SERIAL PRIMARY KEY NOT NULL,
> >                      blahA TEXT);
> >                      
> > CREATE TABLE tableB (id SERIAL PRIMARY KEY NOT NULL,
> >                      blahB TEXT);
> >                      
> > CREATE TABLE tableC (id SERIAL PRIMARY KEY NOT NULL,                     
> >                      ida INT4 REFERENCES tableA(id),
> >                      idb INT4 REFERENCES tableB(id),
> >                      blahC TEXT);
> >                      
> > CREATE TABLE tableD 
> >     (id SERIAL PRIMARY KEY NOT NULL,                     
> >      ida INT4,
> >      idb INT4,
> >      blahC TEXT,
> >      CONSTRAINT checkAB FOREIGN KEY (ida, idb) REFERENCES tableC(ida, idb));
> 
> The above statement is in error.
> In order to create FK to another table (tableC), you must do this
> on tableC's PK (id) or some UNIQUE key in general.

sorry, while adapting the code for the purpose of posting here,
I've forgotten that I've this line in my real script :

  CREATE UNIQUE INDEX tableCindex ON tableC (ida, idb);
  
So I think tableD should be OK (BTW I don't have any error)

Thanks for your help

bye

Jerome Alet

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Reply via email to