Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- From: "Brian Selzer" <brian@xxxxxxxxxxxxxxxxxxx>
- Date: Mon, 28 May 2007 00:39:25 GMT
"Matthias Klaey" <mpky@xxxxxxxxxxx> wrote in message
news:5f2k53pq5srphk68s1op58udei9h60stuo@xxxxxxxxxx
"Brian Selzer" <brian@xxxxxxxxxxxxxxxxxxx> wrote:
"Matthias Klaey" <mpky@xxxxxxxxxxx> wrote in message
news:bipi53pjf51gluul6b3b8uv86kbq7hanse@xxxxxxxxxx
Cimode <cimode@xxxxxxxxxxx> wrote:
Matthias Klaey a écrit :
Cimode <cimode@xxxxxxxxxxx> wrote:
On 26 mai, 18:18, Matthias Klaey <m...@xxxxxxxxxxx> wrote:
Cimode <cim...@xxxxxxxxxxx> wrote:
Hi,
[...]
Never joking. Asking questions and trying t make sense out of CELKO's<<Codd also wrote the following:
There are three difficulties in employing user-controlled keys as
permanent surrogates for entities.>>
Again that Codd ? Who's Codd anyway?
Surely you must be joking?
posts.
Then it's time for a short history lesson. Edgar F. Codd was the
inventor of the relational model (RM). You might start with
http://en.wikipedia.org/wiki/Edgar_F._Codd
and take it from there. Most important is
http://en.wikipedia.org/wiki/Codd%27s_12_rules
(Unfortunately the two Computerworld articles where Codd first
described his rules do not seem to be available online).
You can download Codds very first paper on the relational model under
http://www.klaeycomputing.com/Codd/Codd1.pdf
and the paper cited by Celko under
http://www.klaeycomputing.com/Codd/Codd2.pdf
If you've studied it, they you know that Celko's failed to mention the
last
paragraph of section 4, which is in direct contradiction to his rant.
I've
pointed this and other things out to him before, but he still dumps the
same
flawed argument on people all the time. In other words, he *knowingly*
mischaracterizes Codd's position to advance his own agenda. (He wants
people to buy his books!)
Codds first paper "A relational Model of Data for Large Shared Data
Banks" (Communications of the ACM Vol 13 No 6, June 1970, 377-387) has
"chapters"
1 "Relational Model and Normal Form" and
2 "Redundancy and Consistency"
with sections numbered 1.1 to 1.4 and 2.1 to 2.4.
The second paper "Extending the Database Relational Model to Capture
More Meaning" (ACM Transactions on Database System, Vol 4, No 4,
December 1979, 397-434) is numbered in "chapters/sections" from 1 to
17.
So please which one is your section 4? Do you refer to Paper 1,
Section 1.4, last paragraph
"If the user's relational model is set up in normal form,
names of items of data in the data bank can take a simpler
form than would otherwise be the case. A general name
would take a form such as
R (g).r.d
where R is a relational name; g is a generation identifier
(optional); r is a role name (optional); d is a domain name.
Since g is needed only when several generations of a given
relation exist, or are anticipated to exist, and r is needed
only when the relation R has two or more domains named
d, the simple form R.d will often be adequate."
Or this one? Paper 1, Section 2.4 last paragraph
"Many questions are raised and left unanswered. For
example, only a few of the more important properties of
the data sublanguage in Section 1.4 are mentioned. Neither
the purely linguistic details of such a language nor the
implementation problems are discussed. Nevertheless, the
material presented should be adequate for experienced
systems programmers to visualize several approaches. It
is also hoped that this paper can contribute to greater precision
in work on formatted data systems."
Or this one? Paper 2, Section 4 last paragraph
"They will have to remember, however, that it is now the surrogate
that is the primary key and provides truly permanent identification
of each entity. The capability of making equi-joins on surrogates
implies that users see the headings of such columns but not the
specific values in those columns."
And how, specifically, does any of these paragraphs contradict Celkos
"rant" (sic!)? Does it contradict the whole of it, or just part of it,
and if the latter is the case, which part?
This is the one. It directly contradicts the following paragraph in Celko's
["rant" is a bit more polite than "spew" It certainly doesn't rise to the
level of an argument. The fallacies and deliberate attempt to mislead place
it more in the category of propaganda than anything else.]:
<<
This means that a surrogate ought to act like an index; created by the
user, managed by the system and NEVER seen by a user. That means
never used in queries, DRI or anything else that a user does.
Which sums up his entire argument against surrogates. He then uses the term
"authority" as if in the article Codd was arguing against surrogates, when
the section he quoted (or deliberately misquoted) is a clear argument in
favor of surrogates! Now, while I'm not sure I agree with Codd when it
comes to hiding surrogate key values, I certainly wouldn't twist his words
completely around in order to support my own agenda!
Or are you talking about something completely different?
Greetings
Matthias Kläy
--
www.kcc.ch
.
- Follow-Ups:
- References:
- Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- From: Cimode
- Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- From: Matthias Klaey
- Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- From: Cimode
- Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- From: Matthias Klaey
- Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- From: Cimode
- Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- From: Matthias Klaey
- Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- From: Brian Selzer
- Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- From: Matthias Klaey
- Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- Prev by Date: Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- Next by Date: Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- Previous by thread: Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- Next by thread: Re: Little design mistakes that can be easily avoided (2): Listenning to CELKO (and CELKO alikes)
- Index(es):
Relevant Pages
|