Thread: Staus of Primary/Foreign key?
I have implemented referential integrity in older Postgres projects using functions. I am preparing to do a new project, aand was wondering what the status of Primary/Foreign key implementation was? I am starting with 6.4.2, Thanks. -- Stan Brown stanb@netcom.com 843-745-3154 Westvaco Charleston SC. -- Windows 98: n. useless extension to a minor patch release for 32-bit extensions and a graphical shell for a 16-bit patch to an 8-bit operating system originally coded for a 4-bit microprocessor, written by a 2-bit company that can't stand for 1 bit of competition. - (c) 1999 Stan Brown. Redistribution via the Microsoft Network is prohibited.
> > I have implemented referential integrity in older Postgres projects > using functions. I am preparing to do a new project, aand was wondering > what the status of Primary/Foreign key implementation was? > > I am starting with 6.4.2, I'm planning to implement most of the constraints currently missing (foreign key, cascaded deletes) over rules - or at least making the rule system capable of supporting it. But it will not be in v6.5. The reason for that is that constraints need a special feature, the rule system currently cannot support. It is required that rule actions can be deferred until transaction commit time. At that time (or when they should get run anyway), they need very special visibility of heap tuples on a per range table base. One and the same table might have to be scanned with different snapshot's in one query. That all will take a while. Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #======================================== jwieck@debis.com (Jan Wieck) #
> > > > I have implemented referential integrity in older Postgres projects > > using functions. I am preparing to do a new project, aand was wondering > > what the status of Primary/Foreign key implementation was? > > > > I am starting with 6.4.2, > > I'm planning to implement most of the constraints currently > missing (foreign key, cascaded deletes) over rules - or at > least making the rule system capable of supporting it. > > But it will not be in v6.5. The reason for that is that > constraints need a special feature, the rule system currently > cannot support. It is required that rule actions can be > deferred until transaction commit time. At that time (or > when they should get run anyway), they need very special > visibility of heap tuples on a per range table base. One and > the same table might have to be scanned with different > snapshot's in one query. > > That all will take a while. I am glad to hear Jan say this. I hoped he had not given up on the idea of doing foreign keys. This is a major feature people are requesting. -- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026