Integrity reference and inheritance

From: Christophe Labouisse <christophe(at)labouisse(dot)org>
To: pgsql-sql(at)postgresql(dot)org
Subject: Integrity reference and inheritance
Date: 2001-06-10 04:57:03
Message-ID: m2n17h7x0g.fsf@gabuzo.meunet
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

I wanted to build the following schema :

- one "generic" document table with a column doc_id ;
- a couple of "specific" document tables inheriting from doc ;
- a table refering a document by it's id with and integrity constraint
on it.

In SQL :

CREATE TABLE doc (
doc_id serial PRIMARY KEY,
);

CREATE TABLE lexique (
) INHERITS (doc);

CREATE TABLE word_doc (
id serial PRIMARY KEY,
doc_id int4 NOT NULL CONSTRAINT word_doc_doc_id_ref REFERENCES doc ON DELETE CASCADE,
);

What I tried to do next is to insert a new "lexique" entry, and then a
bunch of "word_doc" rows refering this entry. The last part fails with
a constraint violation this is quite normal since the trigger in
backend/utils/adt/ri_triggers.c makes a "SELECT FROM ONLY".

What should I do ? Should I consider another way to do what I want,
rewrite a trigger to replace the system one ?

--
Le cinéma en Lumière : http://www.lumiere.org/
Fingerprint : 4721 651D D309 B302 93E4 5D73 CC52 DF3A E7C7 86CF

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Christophe Labouisse 2001-06-10 05:08:42 Integrity and Inheritance
Previous Message Joe Conway 2001-06-09 16:23:25 Re: Inconsistent usage of Index