| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: A pk is *both* a physical and a logical object.
"JOG" <jog_at_cs.nott.ac.uk> wrote in message news:1187005635.391467.51520_at_l70g2000hse.googlegroups.com...
> On Aug 13, 6:56 am, "Brian Selzer" <br..._at_selzer-software.com> wrote:
> > Nope, you've missed the point. There are now several possible > 'abstract' individuals. There are now also about a dozen ways of > answering the question "which of these books are the same". Have a > look at the different possible answers. >
I may be dense, but you're right, I've missed your point. There is only one abstract individual that exemplifies all of the concrete instances. There may be additional abstract individuals, such as the set of illustrations, or the translation. Is that your point?
>> Try a simpler example: the number 5
>> is an abstract individual. You have 5 senses; you have 5 digits on each
>> of
>> your hands; there are 5 points on each star of each American flag; most
>> cars
>> leave the factory with 5 wheels (including the spare). There are
>> uncountable physical manifestations of the number 5, but the abstract
>> concept, the number 5, cannot exist apart from them.
>>
>> > There just isn't a correct response, without knowing the correct
>> > context over the lifetime of an application.
>>
>> The lifetime of database often exceeds the lifetime of the applications
>> for
>> which it was originally designed. I have clients that are still using
>> databases that were designed in the early '90s. The applications that
>> were
>> built to use the database have evolved or have been replaced over the
>> years.
>>
>> > And then hopefully its only a short jump to see that if "Mrs Smith"
>> > gets married and our database breaks because we chose surnames as an
>> > identifier, it was our mistake when we were doing the conceptual
>> > modeling and no problem with the theory. Her name didn't identify over
>> > her whole time at a company, and /that/ was our context we should have
>> > considered.
>>
>> It would be a giant leap backward to assume that any update that affects
>> a
>> key necessarily selects a different individual.
> > Au contraire, that is exactly what is happening as far as the database > is concerned. There is no 'individual' outside how we designed our > conceptual model. It would be a "giant leap forward" to realise this, > as one wouldn't need to be make kludge fixes to a broken schema after > the event. >
How then do you account for the case when a relation has more than one key, but only one differs? The individuals are obviously the same because they have the same key value. But wait, they must not be the same because they don't have the same key value. How do you reconcile this apparent contradiction?
>> It is definitely not the case for relation schemata with more than one
>> key, and it reduces by half
>> the ways that individuals can be identified in queries. Where is the
>> logic
>> in the assuption? Since it is clearly not the case when there is more
>> than
>> one key, how can it possibly stand when there is only one key. Certainly
>> a
>> relation that has more than one key can be decomposed into an equivalent
>> set
>> of relations where one has only one key--a key that may be the target of
>> an
>> update. Would it always be the case then that a new individual is
>> selected?
>> Certainly not.
> > You seem to be confusing entities which have identifying attributes, > and propositions which have keys. These are completely distinct, and > we don't need to go anywhere near keys in this discussion. Similarly I > worry that you still consider an update as something other than an > operation which deletes one proposition and inserts another. Its / > just/ a shortcut, and promoting it to having some primary status is a > mistake. >
No. I'm not. The individuals referenced in a proposition are identified by sets of properties, and those properties are represented in each tuple as values for prime attributes. Keys are critical to the discussion. I surely hope you can see that! In addition, identification is not identity! Identification is used by one individual to pick another out of a crowd, whereas identity is what one individual is. It may be that much of the confusion is caused by misinterpreting this simple distinction. Identification is the nominative form of the verb "to identify."
Update is a primitive operation. It is not a shortcut--it cannot be a shortcut, because not all key values permanently identify individuals. Received on Mon Aug 13 2007 - 13:27:02 CDT
![]() |
![]() |