Re: Does Codd's view of a relational database differ from that ofDate&Darwin?[M.Gittens]

From: Jon Heggland <heggland_at_idi.ntnu.no>
Date: Sun, 3 Jul 2005 19:40:19 +0200
Message-ID: <MPG.1d32414b4b7ad25c9896d2_at_news.ntnu.no>


In article <BUAxe.135753$ms1.7223342_at_phobos.telenet-ops.be>, jan.hidders_at_REMOVETHIS.pandora.be says...
> >>It's the difference between informally stating that certain
> >>fields are surrogate keys and waving your hands a bit, and coming up
> >>with a precise formal theory of what that exactly means.
> >
> > I don't see where hand-waving and informality enters into it.
>
> In the part where you forget to explain what "surrogate" exactly means.

A surrogate key means what the database designer states that it means, just like any other element of the model. It is not logically different from an OID or an "opaque key", except that it is handled without introducing special operators and restrictions.

> >>Data values are special objects that have one or more representations
> >>associated with them by which they are identified. Like LOTs and NOLOTs
> >>in NIAM.
> >
> > Are you talking about LOTs or NOLOTs now? NOLOTS have reference schemes
> > where (the representation of) a value identifies them.
>
> Yes, they can, but that is neither here nor there. Lexical objects are
> identical to their representation, non-lexical objects are not equal the
> combination of lexical objects they are identified by. If you are
> identified by the string "Jon Heggland" then that is not the same as
> saying that you are identical to that string.

No, but for the purpose of a particular database, I might very well be. The job of a database is not to model reality, but to model certain aspects of reality.

And anyway, if I am identified by an OID or opaque key, then that is not the same as saying that I am identical to that OID or opaque key. What is the difference?

-- 
Jon
Received on Sun Jul 03 2005 - 19:40:19 CEST

Original text of this message