You are absolutely right.  I hate it when I get turned around.  Thank you very
much for the assistance.

Chris
------------------( Forwarded letter 1 follows )---------------------
Date: Thu, 13 May 2004 07:57:38 -0700 (PDT)
To: chris.hoover
Cc: [EMAIL PROTECTED]
From: [EMAIL PROTECTED]
Subject: Re: [ADMIN] Help with foreign key creation problem

On Thu, 13 May 2004, CHRIS HOOVER wrote:

> I need some help understanding and creating foreign keys in postgresql.
>
> Here is an example of what I am trying to do:
>
> I have table 1 with:
> table1_id serial unique
> table1_col1 varchar
>
> I have table2 with:
> table2_id serial unique
> table1_id integer
> table2_col1 varchar
>
> When I try to create the foreign key with
> alter table "schema_name"."table1"
>   add foreign key ("table1_id")
>     references "schema_name"."table2"("table1_id")
>     on delete cascade
>     on update cascade
>     not deferrable;
>
> Postgres complains with:
> ERROR: UNIQUE constraint matching given keys for referenced table "table2" not
> found.
>
> Why is postgresql demanding a unique key on table2.table1_id?  It is a foreign
> key in a parent/child 1 to many relationship.

Are you sure you're making the key the direction you want?
I would think you'd want a foreign key on table2(table1_id) referencing
table1(table1_id) not the other way around since presumably table1 is the
table with the authoratative list of table1_ids.

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
      subscribe-nomail command to [EMAIL PROTECTED] so that your
      message can get through to the mailing list cleanly

Reply via email to