Re: A pk is *both* a physical and a logical object.

From: David Cressey <cressey73_at_verizon.net>
Date: Thu, 26 Jul 2007 12:46:24 GMT
Message-ID: <AI0qi.3367$0v4.3291_at_trndny01>


"Brian Selzer" <brian_at_selzer-software.com> wrote in message news:DjPpi.24618$Rw1.11254_at_newssvr25.news.prodigy.net...

> This illustrates what happens when the only key on a relation schema
permits
> updates. It can't be determined if a new individual is being selected, or
> if the state of the current individual is now different.

This is the point I have been trying to make for the past week or so. The mathematics of the relational data model don't, in this case, disambiguate two profoundly different scenarios in the real world the data purports to describe.

> The problem I have
> is with the assumption that it is always the case that a new individual is
> being selected. This implies that there is a requirement for all keys to
be
> rigid, which is clearly not the case.
>

The question is not whether all keys are rigid but whether the attributes that compose identity are always immutable. If they are, then making the corresponding keys rigid makes sense.
If they are not, then identifying a "thing" by specifying its key attributes is a temporal stopgap, that could be invalidated.

In beginning database design courses, we always teach people that one reason not to key data about people, like medical history, on the person's name is that people change their names, for example when they get married. There are other problems with using names as keys, of course, but this is one of the big ones.

As I remarked in here a few years ago....

"The rows by any other name would smell as sweet." Received on Thu Jul 26 2007 - 14:46:24 CEST

Original text of this message