Q: inheritance

From: Rüdiger Sörensen <soerense(at)mpch-mainz(dot)mpg(dot)de>
To: pgsql-general(at)postgresql(dot)org
Subject: Q: inheritance
Date: 2008-12-04 16:40:44
Message-ID: 4938080C.2010905@mpch-mainz.mpg.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

hi,

I think I misunderstand the concept of inheritance. I was under the
impression that inheriting from an existing table inherits all of the
parent's columns.

But:

create table t1 (id serial primary key);
create table t2 (num int) inherits (t1);
create table t3 (t1 int references t1(id));

insert into t2 (id, num) values (1,1);
-- so far , so good
-- the next one fails:
insert into t3 (t1) values (1);

fails with an error (translated from german):

insert or update in table "t3" violates foreign key constraint "t3_t1_fkey"
DETAIL: key(t1)=(1) is not present in table "t1"

but:

select * from t2;
id | num
----+-----
1 | 1

can anyone explain this behaviour? My database setup relies on inherited
tables that share a primary key.

cheers, Rüdiger.

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Gustavo Rosso 2008-12-04 16:44:08 spanish
Previous Message Dave Page 2008-12-04 16:40:38 Re: Job scheduling in Postgre