Обсуждение: BUG #1662: Table constrains are not properly inherited.

Поиск
Список
Период
Сортировка

BUG #1662: Table constrains are not properly inherited.

От
"Steven Mooij"
Дата:
The following bug has been logged online:

Bug reference:      1662
Logged by:          Steven Mooij
Email address:      steven@mooij.org
PostgreSQL version: 7.4.7
Operating system:   i386-pc-linux-gnu, compiled by GCC i386-linux-gcc (GCC)
3.3.5 (Debian 1:3.3.5-12)
Description:        Table constrains are not properly inherited.
Details:

When a table is inherited from, it's table constraints are 'disabled':

CREATE TABLE super (x INTEGER, PRIMARY KEY (x));
CREATE TABLE sub (y INTEGER) INHERITS (super);
INSERT INTO sub VALUES (1, 1);
INSERT INTO sub VALUES (1, 2);
INSERT INTO super VALUES (1);

This should result in a 'duplicate key violation' for the unique constraint
on super(x), but it doesn't.

In this case

SELECT x FROM super;

results in:

 x
---
 1
 1
 1
(3 rows)

Re: BUG #1662: Table constrains are not properly inherited.

От
Euler Taveira de Oliveira
Дата:
Hi Steven,

> Description:        Table constrains are not properly inherited.
>
Have you read the section 5.5 in the manual?
http://developer.postgresql.org/docs/postgres/ddl-inherit.html

"A serious limitation of the inheritance feature is that indexes
(including unique constraints) and foreign key constraints only apply
to single tables, not to their inheritance children."


Euler Taveira de Oliveira
euler[at]yahoo_com_br





____________________________________________________Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis!
http://mail.yahoo.com.br