Re: SUPPORT FOR DECLARATIVE TRANSITION CONSTRAINTS

From: Brian <brian_at_selzer-software.com>
Date: Wed, 22 Sep 2010 07:19:56 -0700 (PDT)
Message-ID: <4de5cba3-0bdb-40d1-9507-f12216c94588_at_u13g2000vbo.googlegroups.com>


On Sep 22, 7:14 am, Erwin <e.sm..._at_myonline.be> wrote:
> On 22 sep, 05:39, Brian <br..._at_selzer-software.com> wrote:
>
>
>
> > I think you misunderstand. Permanent surrogates do not suffer from
> > exactly the same "limitations."
>
> You have claimed before that you were not talking of objectid's,
> perhaps you have also already claimed that you were not talking of
> ROWID() either, but one thing you have so far failed to do is explain
> to me how you think you can make the system enforce the permanency of
> your surrogates.

As I indicated, there is additional machinery needed to prevent surrogate from being reused. I believe RM VERY STRONG SUGGESTION 1: SYSTEM KEYS suggests a mechanism. Using what I proposed in the original post, the additional machinery can be implemented as follows: Create a new relvar with a single attribute to contain the permanent surrogates. Define a transition constraint that disallows all deletes and upates that target the permanent surrogate relvar. Finally, declare foreign key constraints from each relvar that has a permanent surrogate attribute to the permanent surrogate relvar. To prevent reuse of existing surrogates, transition constraints could be declared that prevent inserts into a relvar that has a permanent surrogate attribute without a corresponding insert into the permanent surrogate relvar. Received on Wed Sep 22 2010 - 16:19:56 CEST

Original text of this message