Re: does a table always need a PK?

From: Bob Badour <bbadour_at_golden.net>
Date: Tue, 26 Aug 2003 11:01:52 -0400
Message-ID: <BLL2b.951$Xb2.85420125_at_mantis.golden.net>


"Heikki Tuuri" <Heikki.Tuuri_at_innodb.com> wrote in message news:9AE2b.79$4X.9_at_read3.inet.fi...
> Bob,
>
> "Bob Badour" <bbadour_at_golden.net> kirjoitti viestissä
> news:OYy2b.694$FE.81687684_at_mantis.golden.net...
> > "Heikki Tuuri" <Heikki.Tuuri_at_innodb.com> wrote in message
> ...
> > > if I can recall, the 1970 paper is not formulated as mathematical
axioms
> > > either. Or is it? Do you remember?
> >
> > rtfm: http://www.acm.org/classics/nov95/
>
> it is not. I did not find mathematical axioms there. Have you studied
> mathematics?

I have studied mathematics enough to reconize that the "term relation [used] in its accepted mathematical sense" is sufficiently axiomatized for most mathematicians. A dbms is a formal logic system, and the axioms of that system are actually the data in the database.

> For example, where in the 1970 paper is the following rule formalized?
>
> http://www.cis.ohio-state.edu/~sgomori/570/coddsrules.html:
>
> "
> 9. Logical Data Independence
> Application programs and terminal activities remain logically unimpaired
> when information preserving changes of any kind that theoretically permit
> unimpairment are made to the base tables.
> "

Once again, you ignore the formal system to complain that a rule of thumb is not formal. That's quite stupid, don't you think?

As it happens, the above rule of thumb goes much deeper than axioms. One can construct just about any formal system. For the formal system to be useful, one must use a principled design for the formal system. To design a formal system useful for data management, one must consider the principles of good data management in the design of the formal system.

The above rule of thumb is actually a guiding principle for identifying the principles of good data management. It encompasses such principles as the separation of concerns and the value of abstraction, which overlap somewhat with the principles of good software development.

Some will argue that mathematics does not have to be useful for anything but mathematics, and I would agree. However, mathematicians use principles like closure when devising their formal systems. If one compares two arbitrary formal systems, one can generally identify principles distinguishing the systems. In fact, to a large measure this is what mathematicians do.

> Or:
>
> "
> 6. View Updating Rule
> All views that are theoretically updateable are also updateable by the
> system.
> "

Many would argue this rule of thumb is in fact redundant because logical data independence requires updatable views. I suspect Codd included it for clarity.

> ?

!

> ...
> > > "* FirstSQL/J Object/Relational DBMS "
> > >
> > > By the way, FirstSQL probably is not Codd-12-relational? Why do you
> claim
> > it
> > > to be an 'object/relational' database then? Is it 'Lee
> > > Fesperman -relational'?
> >
> > It was me who pointed out SQL is not particularly relational--not Lee.
> > FirstSQL, of course, suffers some of the same problems all SQL dbmses
> > suffer. Unlike MySQL, I would count FirstSQL a dbms or at least a
> > significant subset of such a system.
>
> Lee's claims are grossly contradictory.

Your claims are grossly contradictory, but Lee's are quite consistent. Lee and I disagree about some issues, so his claims are not always consistent with my claims, but only an idiot would require such consistency.

The ad hominem between the two of you is nothing but the perfectly predictable mudslinging as two competitors malign each other. There is one important difference, however: Lee's ad hominem of you is accurate and supported by the available evidence.

> He claims that 'the relational
> model' is not vague

It is not vague. See the 1970 paper.

> and claims that his database is 'object/relational'.

When other SQL vendors stop making specious claims about being relational, I am sure Lee will stop too. Until then, you are just the pot calling the kettle black. His criticisms of your claims that MySQL is an RDBMS involve the fact that MySQL is not a dbms regardless what logical data model it actually supports.

> > > > He has stubbornly refused to educate himself, clinging to
'thumbnail'
> > > > descriptions of the relational model.
> > >
> > > No, not at all. I looked at the 1970 paper 1.5 years ago.
> >
> > Looking and learning are two different things. If you know what is in
the
> > 1970 paper, why would you argue that the 12 rules are insufficiently
> formal?
>
> The 1970 paper seems to be insufficiently formal.

What is informal about "relation ... in its accepted mathematical sense" ?

> ...
> > six months later, you finally condescended to read the paper, and now
you
> > are a database vendor who claims to have read the paper and who
continues
> to
> > spout the most absurd, ridiculous nonsense. Is that an accurate summary?
>
> No. Look above who is talking nonsense.

I will leave that as an exercise for the reader. Received on Tue Aug 26 2003 - 17:01:52 CEST

Original text of this message