Re: Objects and Relations
Date: Wed, 14 Feb 2007 16:47:50 GMT
Roy Hann wrote:
> "Marshall" <marshall.spight_at_gmail.com> wrote in message
>>On Feb 14, 7:14 am, "Roy Hann" <specia..._at_processed.almost.meat> >>wrote: >> >>>>>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, >>>"I >>>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 >>identity.
> No question, although in the real world it communicates only through
> familiarity over time, and only because customers are not in every way
> 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