Thread: Reference to Inherited Table

Reference to Inherited Table

From
Thorsten Haude
Date:
Hi,

I want to reference an inherited table:
- - - Schnipp - - -
create table parent
(
    id  serial,
    primary key(id)
);

create table child
(
    thing integer
) inherits (parent);

create table third
(
    stuff integer references child
);
- - - Schnapp - - -
But get an error:
ERROR:  PRIMARY KEY for referenced table "child" not found

Is there a way to do it or do I have to reference parent?

tia,
Thorsten
--
Auch Hunger ist Krieg.
    - Willy Brandt

Re: Reference to Inherited Table

From
Chris
Date:
Hi,

>create table third
>(
>     stuff integer references child
>);
>- - - Schnapp - - -
>But get an error:
>ERROR:  PRIMARY KEY for referenced table "child" not found

Try
create table third(
stuff integer references child(thing)
);

You could do what you were trying to do if in the child table you have a
field called 'stuff', but since you don't, you have to reference it
specifically.


-----------------
      Chris Smith
http://www.squiz.net/