Jeff Davis <pgsql@xxxxxxxxxxx> wrote: > On Fri, 2012-02-03 at 07:58 +0100, Matthias wrote: > > Hey, > > > > how can I implement temporal foreign keys with postgresql? Is writing > > triggers the only way to enforce temporal referential integrity > > currently? > > Yes, currently that's the only way. Look at CREATE CONSTRAINT TRIGGER. It works in 9.2devel ;-) test=# create table x (d daterange primary key); NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "x_pkey" for table "x" CREATE TABLE test=*# create table y (d daterange references x); CREATE TABLE test=*# insert into x values ('[2012-01-01,2012-01-10)'); INSERT 0 1 test=*# insert into y values ('[2012-01-01,2012-01-10)'); INSERT 0 1 test=*# insert into y values ('[2012-01-01,2012-01-20)'); ERROR: insert or update on table "y" violates foreign key constraint "y_d_fkey" DETAIL: Key (d)=([2012-01-01,2012-01-20)) is not present in table "x". Jeff: thx for YOUR work! Andreas -- Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect. (Linus Torvalds) "If I was god, I would recompile penguin with --enable-fly." (unknown) Kaufbach, Saxony, Germany, Europe. N 51.05082°, E 13.56889° -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general