Re: Objects and Relations
Date: Wed, 14 Feb 2007 20:39:15 -0000
"Cimode" <cimode_at_hotmail.com> wrote in message
On 14 fév, 17:41, "Roy Hann" <specia..._at_processed.almost.meat> wrote:
> "Cimode" <cim..._at_hotmail.com> wrote in message
>> > In order words surrogate keys are *practical*?
>> If you like, although in colloquial English that could be misinterpreted
>> mean "recommended as best practice". I might prefer to say only that
>> can be convenient but have no theoretical requirement to be used.
> Indeed. I personally believe that they are *necessarily* used because
> there is no such thing as a natural key in nature.
I am inclined to regard the data as the testimony of the users about the real world. The keys that exist about which the users can say things are ultimately synthetic as you say, but they are pre-existing in the real world. The surrogates that we generate in the software during the process of recording the testimony are surrogates that spring into existence *after* the user assesses the real world and forms his testimony. Therefore they cannot have anything to do with the real world. They *are* different, if no more synthetic, and they are not strictly necessary--merely convenient.
> In my perspective,
> a natural key is nothing but a socially accepted surrogate key.
> Such process may explain the
> individual unease feeling when associating a thing with the
> designation that is assigned to it.
My unease is twofold: to generate surrogates that don't have unintended and unacceptable implementation consequences requires a lot of quite clever machinery the expense of which cannot always be justified, and second, "surrogates" are often introduced in the absence of a reliable natural key rather than as a surrogate for a naturual (socially accepted) key, masking possible contradictions and errors behind spurious uniqueness.
Roy Received on Wed Feb 14 2007 - 21:39:15 CET