Re: A pk is *both* a physical and a logical object.
Date: Wed, 18 Jul 2007 04:51:31 GMT
Message-ID: <n%gni.26764$2v1.14119_at_newssvr14.news.prodigy.net>
"paul c" <toledobythesea_at_oohay.ac> wrote in message news:Dncni.127379$1i1.54494_at_pd7urf3no...
> Brian Selzer wrote:
>> "Roy Hann" <specially_at_processed.almost.meat> wrote in message
>> news:7e2dncCYhYD45wHbRVnytAA_at_pipex.net...
>>
>>>"Brian Selzer" <brian_at_selzer-software.com> wrote in message
>>>news:1Pwmi.39574$Um6.32783_at_newssvr12.news.prodigy.net...
>>>[snip]
>>>
>>>>In addition, the definition of a candidate key does not demand that its
>>>>values rigidly designate individuals in the universe of discourse.
>>>
>>>I've been waiting for someone else to pick up on this comment, but since
>>>they haven't I'm going to bite. When you talk about "individuals" here,
>>>do you intend that to be understood as "individual propositions"?
>>>
>>
>> No.
>>
>>>My layman's understanding is that the value of a candidate key most
>>>definitely *is* a unique identifier (and is irreducible).
>>>
>>
>>
>> Indeed. But does the same key value identify the same individual in all
>> possible relation values? Clearly this is not the case. Consider a
>> relation schema in which the entire heading is the key. Now suppose that
>> a user issues a update. The tuple that identified an individual in the
>> universe prior to the update is now different from the tuple that
>> identifies the same individual after the update. ...
> > It is different, but I think that is beside the point, which is that after > the "update", the user is looking at a different relation. Nothing in the > original relation has changed. >
That is the heart of the issue. The need for rigid designators materializes especially during a transition, because it is at that point where a proposed possible database value can be compared with the actual database value to determine whether or not a transition should be allowed. Assuming that a proposed relation value depends upon the actual value, how can you join the proposed value to the actual value in order to determine whether or not the transition should be allowed? If the key rigidly designates, then it can be used; if it does not, then it can't, and thus it may become necessary to augment the schema with a key that rigidly designates.
> p Received on Wed Jul 18 2007 - 06:51:31 CEST
