Re: REFERENCES this_table ( oid ) - Mailing list pgsql-bugs

From Jean-Luc Lachance
Subject Re: REFERENCES this_table ( oid )
Date
Msg-id 3DF10537.4D9FABAD@nsd.ca
Whole thread Raw
In response to REFERENCES this_table ( oid )  (Marques Johansson <postgresql@displague.com>)
List pgsql-bugs
Hello Marques,

Your problem is that the oid is not indexed.
Create an index on photos(oid) then add the constraint separately.

JLL


Marques Johansson wrote:
>
> See the ERROR and comments below...
>
> create table photos (
>   filename varchar[128] not null,
>   filesize int default null,
>   width int default null,
>   height int default null,
>   origPhoto oid default null references photos ( oid ),
>   altDesc varchar[128] default null
> );
>
> psql:sid-sql:40: NOTICE:  CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s)
> psql:sid-sql:40: ERROR:  UNIQUE constraint matching given keys for referenced table "photos" not found
>
> Am I not supposed to have self referencing 'reference' values?  Or is the
> oid field invisible to this function? (Maybe because the table has yet to
> be created?)  I don't see any reason why I shouldn't be able to make a
> self-referencing ref.
>
> I would try creating the table first, then altering the field later - but
> you still can't 'alter column' that way.  Should I just forget about using
> the 'references' keyword?
>
> --
> Marques Johansson
> postgresql@displague.com
>
> You may my glories and my state dispose,
> But not my griefs; still am I king of those.
>                 -- William Shakespeare, "Richard II"
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org

pgsql-bugs by date:

Previous
From: Marques Johansson
Date:
Subject: REFERENCES this_table ( oid )
Next
From: Stephan Szabo
Date:
Subject: Re: REFERENCES this_table ( oid )