Re: Objects and Relations

From: Bob Badour <>
Date: Wed, 14 Feb 2007 16:47:50 GMT
Message-ID: <W2HAh.6428$>

Roy Hann wrote:

> "Marshall" <> wrote in message

>>On Feb 14, 7:14 am, "Roy Hann" <specia..._at_processed.almost.meat>
>>>>>As an addendum, once implemented a surrogate key becomes a natural
>>>>>key. I find this fascinating - it seems somehow analagous to "Nature
>>>>>abhoring a vacuum".
>>>>I think it has more to do with the human drive to communicate.
>>>I struggle with that.   If, for some reason, I choose to say (just) that, 
>>>have a tin of cat food, and its name shall be 1345235", what have I
>>>communicated?  No one in the real world could ever point it out and say,
>>>"Hey!  There goes 1345235."  And nor could I.
>>Let's think of customers and customer ids; it's a very similar case.

> Actually no. I deliberately wrote: 'I choose to say (just) that, "I have a
> tin of cat food, and its name shall be 1345235"', with emphasis on "just".
> Any attempt to distinguish individual cans is probably spurious. Yet people
> do often try to do such things in databases. (Wrongly IMO.)
>>What does this communicate? It communicates customer

> No question, although in the real world it communicates only through
> familiarity over time, and only because customers are not in every way
> interchangeable.
> The point I am groping towards (I think) is that surrogates are exactly
> that. They stand in place of something else you could have used albeit
> perhaps less conveniently. But if there is nothing else, what does the
> surrogate stand in place of?

To amplify: All keys stand in place of something, which necessarily makes all keys surrogates. When we introduce an unfamiliar key, we do so for convenience: Uniqueness, irreducibility, stability and simplicity being convenient features. Humans appreciate convenience and will naturally use the new key making it familiar. Received on Wed Feb 14 2007 - 17:47:50 CET

Original text of this message