Re: foreign keys for array/period contains relationships - Mailing list pgsql-hackers

From Rod Taylor
Subject Re: foreign keys for array/period contains relationships
Date
Msg-id AANLkTikeVH3UFDSbdWA7R0_Oor3ssL_s8424_TbQxry3@mail.gmail.com
Whole thread Raw
In response to foreign keys for array/period contains relationships  (Peter Eisentraut <peter_e@gmx.net>)
Responses Re: foreign keys for array/period contains relationships
List pgsql-hackers


On Mon, Oct 25, 2010 at 15:11, Peter Eisentraut <peter_e@gmx.net> wrote:
Example #4: PK is period, FK is timestamp.  FK must be contained in some
PK period.

CREATE TABLE pk (a period PRIMARY KEY, ...);

CREATE TABLE fk (x timestamp REFERENCES pk (a), ...);

As above, we can probably arrange the operator knowledge to make these
checks.  But I think additionally, you'd need an exclusion constraint on
the PK side to ensure nonoverlapping arrays/periods so that on
update/delete restrict as well as cascading deletes work.
 
Additional interesting examples involve IP network containment using
inet/cidr or ip4/ip4r.  There, you'd probably need additional syntax to
tell the system explicitly which operators to use.

There are a large number of use-cases for this type of foreign key with geometry ( PostGIS ) types as well. Point references Area or Line, Area references Area, etc.

pgsql-hackers by date:

Previous
From: Yeb Havinga
Date:
Subject: Re: Sync Rep and shutdown Re: Sync Rep v19
Next
From: hom
Date:
Subject: Re: I am confused after reading codes of PostgreSQL three week