From: | Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com> |
---|---|
To: | Nikola Milutinovic <Nikola(dot)Milutinovic(at)ev(dot)co(dot)yu> |
Cc: | PostgreSQL General <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Classes (Object Oriented) in PostgreSQL question |
Date: | 2001-11-23 19:00:14 |
Message-ID: | 20011123105859.A84165-100000@megazone23.bigpanda.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
> Hi all.
>
> I'm in the process of redesigning my database. I have seen some space
> for object design in my data schema. Namely, I'm modeling my company and
> it has organizational units: "parts", "sectors", "divisions" and
> "subdivisions". Each of these look alike and form a tree.
>
> So I thought to create a table "org_unit" containing common fields and
> just inferit them for a particular unit type. Something like:
>
> CREATE TABLE org_unit (
> id int4
> PRIMARY KEY,
> name text,
> manager_id int4,
> ordering int2,
> print boolean
> );
>
> CREATE TABLE ou_part (
> ) INFERITS (org_unit);
>
> CREATE TABLE ou_sector (
> part_id int4,
> FOREIGN KEY( part_id ) REFERENCES ou_part
> ) INHERITS (org_unit);
> ...
> CREATE TABLE official_mail (
> id int4 PRIMARY KEY,
> e_mail text,
> org_unit_id int4,
> FOREIGN KEY( org_unit_id ) REFERENCES org_unit
> );
>
> Will this work? Both the foreign key in ou_* and in official_mail?
Probably not how you want. The references will currently
only reference the exact table you specify, not any of the
children.
From | Date | Subject | |
---|---|---|---|
Next Message | Luis Amigo | 2001-11-23 19:07:58 | explain analyze |
Previous Message | Stephan Szabo | 2001-11-23 18:58:37 | Re: error using pl/pgsql? [possibly off topic] |