Re: pre-FAQ

From: Tony Douglas <tonyisyourpal_at_netscape.net>
Date: 29 Sep 2004 07:44:32 -0700
Message-ID: <bcb8c360.0409290644.1ce009a7_at_posting.google.com>


"Laconic2" <laconic2_at_comcast.net> wrote in message news:<Q4ydnbtRWNFqGsXcRVn-pQ_at_comcast.com>...

> What is a relational database?
>

A good question, which deserves a better answer than I've got time to give it right now. I'd settle for "a database described using the relational theory of data originally proposed by EF Codd". However, this definition would have some implications for the rest of your post ...

... snip ...

>
>
> Note that it includes Oracle and RDB, my two favorite relational DBMS
> products in its listings.
>

Then the "authoritative reference" you've quoted is wrong.

> Hurrah! When I first got this forum I was
> lambasted for referring to Oracle as a "relational databases".

Correctly. Lambasting would be harsh, but Oracle is certainly not a relational database. It's a database management system, and an SQL one at that. But that isn't the same as a relational database management system.

> Between Alfredo and Leandro, they tore me apart.
>

Which would be going too far. But essentially they were correct.

> I'm glad to see my usage vindicated, by an "authoritative reference".

On rereading this, I'm not sure if the quoting of "authoritative reference" wasn't connotating mild irony ? But certainly, you are in agreement with your "authoritative reference", even if you both agree to be wrong.

As for questions, how about ...

Q. Why isn't SQL relational ?
Quick A. Because it doesn't operate on relations, it operates on SQL tables which permit a variety of conditions that relations expressly deny. Permitting these conditions causes problems with the definitions of the relational operators upon which SQL is notionally based, thereby invalidating much of the theory. Many features of SQL, old and new (e.g. nulls, pointers, duplicates) sit in exact opposition to the original, and in some cases explicit, intent of the relational model. Requires longer, more detailed (and probably more accurate !) A.

Q. What is a database ? (expressly *not* : What is a *relational* database ?)
Requires an A, which doesn't involve relational theory (or any other purported theory of data) or computers, since you can have a database on bits of paper if you feel so inclined. A devil to manage, though. This is where "organised set of facts" or somesuch would come in, but
I can't think of a snappy enough way to say it.

Just for fun ...

Q. Can an SQL table have no columns ? If it can have no columns, how many rows can it have ?

Q. Can a relation have no attributes ? If it can have no attributes, how many tuples can it have ?

Q. Why do people get upset about interchanging the terms "database" and "database management system" ?
Honest A. Because I'm feeling a bit cranky today. Sorry.

  • Tony
Received on Wed Sep 29 2004 - 16:44:32 CEST

Original text of this message