| From: | "Phil Endecott" <spam_from_postgresql_sql(at)chezphil(dot)org> | 
|---|---|
| To: | Franco Bruno Borghesi <franco(at)akyasociados(dot)com(dot)ar>, pgsql-sql(at)postgresql(dot)org | 
| Subject: | Re: Need indexes on inherited tables? | 
| Date: | 2004-06-26 22:30:26 | 
| Message-ID: | 8141987@chezphil.org | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-sql | 
I asked if derived tables use primary key indexes generated in the base tables that they inherit from.
Franco Bruno Borghesi replied:
> [the derived table] is not inheriting any indexes, neither the
> primary key constraint.
OK, thanks! I had come to the conclusion that it was not using the index, but I'm really surprised to hear that the primary key constraint that I define in a base table is not inherited. Are any constraints inherited? What happens if I declare a single-column primary key? What if I declare a "not null" constraint or a "check" constraint in a base table?
Having to replicate the constraints and indexes for each derived table is a pain - lots of error-prone typing - but there is a more serious problem: how can I ensure that these keys are unique across all of the derived tables? (i.e. if T1 and T2 inherit from B, and B's primary key is (id,xx), then I want there to be at most one row in (T1 union T2) that has any value of (id,xx).)
Is this a possible area for future enhancements?
Regards,
--Phil.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | George Siganos | 2004-06-26 23:06:15 | Re: Question about a CIDR based query | 
| Previous Message | Franco Bruno Borghesi | 2004-06-26 21:06:20 | Re: Need indexes on inherited tables? |