| 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: | Whole Thread | Raw Message | 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.
| 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 |