List:General Discussion« Previous MessageNext Message »
From:Heikki Tuuri Date:October 28 2003 8:28pm
Subject:Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)
View as plain text  
Hi!

For decades, people have debated in comp.databases.theory and elsewhere how
a 'relational database' should be defined.

Codd's original 1970 paper sketches the relational algebra as a query
language of a relational database, though Codd is not very precise about
what the query language exactly should be. The paper also mentions integrity
constraints. Relations in the 1970 paper are defined as mathematical sets,
that is, no duplicate rows in tables or any query results are allowed.

Thus, no SQL database is Codd-1970-relational, because SQL allows duplicate
rows.

Codd's 12 rules, from about 1987, demand that a 'relational database' must
satisfy several strict conditions. For example, any view 'theoretically
updateable should be updateable with the data manipulation language'.

No existing database is even close to being Codd-12-relational.

On the other hand, for example, Elmasri and Navathe in their university
textbook define a 'relational database' less strictly, and mention Microsoft
Access and Oracle as examples of an 'RDBMS'.

Thus, MySQL apparently is Elmasri-Navathe-relational, but not
Codd-1970-relational. The same holds for DB2, Oracle, and MS SQL Server.

Best regards,

Heikki Tuuri
Innobase Oy
http://www.innodb.com
Foreign keys, transactions, and row level locking for MySQL
InnoDB Hot Backup - hot backup tool for InnoDB which also backs up MyISAM
tables
Order MySQL technical support from https://order.mysql.com/



----- Original Message ----- 
From: "Saqib Ali" <saqib@stripped>
Newsgroups: mailing.database.myodbc
Sent: Tuesday, October 28, 2003 10:10 PM
Subject: RE: Is MySQL Relational? (was: Foreigner keys in MySQL?)


> so funtions that can be performed by relation algebra are a subset of the
> functions performed by a relational database?
>
> however isn't it required for a relational database to perform all the
> functions of relation algebra?
>
>
> Saqib Ali
> ---------
> http://validate.sourceforge.net <--- XHTML/HTML/DocBook Validator
>
> On Tue, 28 Oct 2003, Jon Frisby wrote:
>
> > No.  Codd's rules defining what is a relational database are more
> > specific than relational algebra can express.  Essentially the
> > requirements to be a relational database are a superset of the
> > operations defined by relational algebra.
> >
> > -JF
> >
> > > -----Original Message-----
> > > From: Saqib Ali [mailto:saqib@stripped]
> > > Sent: Tuesday, October 28, 2003 8:47 AM
> > > To: jeffrey_n_Dyke@stripped
> > > Cc: mysql@stripped
> > > Subject: Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)
> > >
> > >
> > > a question...
> > >
> > > is any DB that complies to the "Relational Algebra" a
> > > "Relational DB"???
> > >
> > > Saqib Ali
> > > ---------
> > > http://validate.sourceforge.net <--- XHTML/HTML/DocBook Validator
> > >
> > > On Tue, 28 Oct 2003 jeffrey_n_Dyke@stripped wrote:
> > >
> > > >
> > > > I tend to agree with the past two posts that mysql is in
> > > fact relational,
> > > > and would like to add that if we are going to make blanket
> > > statements that
> > > > something IS or IS NOT that we qualify our responses.
> > > personlly i would
> > > > like to know why Martijn views it as being a non relational
> > > db, without
> > > > argument.  If you just say its so, why am is supposed to take that
> > > > statement over those that provide a full email of text like
> > > bluejack or
> > > > John that provided additional information via a link.
> > > >
> > > > Just saying No, to a question like that does not lend to
> > > learning only to
> > > > confusion.
> > > >
> > > > sorry about the mini rant....
> > > > jeff
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >                       bluejack
> > > >                       <blunt@stripped        To:
> > > mysql@stripped
> > > >                       om>                      cc:
> > > >                                                Subject:  Is
> > > MySQL Relational? (was: Foreigner keys in MySQL?)
> > > >                       10/28/2003 11:38
> > > >                       AM
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > 10/28/03 8:11:16 AM, "Martijn Tonies" <m.tonies@stripped>
> wrote:
> > > >
> > > > >>
> > > > >> If you are trying to determine whether MySQL is a
> > > relational database,
> > > > >> the answer is yes.
> > > > >
> > > > >Ehm... the answer is "no".
> > > > >
> > > > >It's getting better, that's for sure.
> > > >
> > > > MySQL may or may not conform to some standard or another, and it may
> > > > or may not perform the tasks that you, personally, want it to, but
> > > > in fact it *is* a relational database, as opposed to a flat file or
> > > > an object database.
> > > >
> > > > I recommended the questioner evaluate her needs against MySQL's
> > > > available feature set, because if you are used to Oracle (or some
> > > > other robust, commercial relational database) you may be surprised
> > > > at some of the differences or absences in MySQL.
> > > >
> > > > But the questioner made it seem as though she was really just
> > > > trying to get a feel for the basics scope of MySQL, and in that
> > > > context, yes, MySQL is designed to a implement a relational
> > > > database model as opposed to some other fundamental type of
> > > > database.
> > > >
> > > > So, what's your laundry list of things MySQL should do?
> > > >
> > > > --bluejack
> > > >
> > > >
> > > >
> > > > --
> > > > MySQL General Mailing List
> > > > For list archives: http://lists.mysql.com/mysql
> > > > To unsubscribe:
> > > http://lists.mysql.com/mysql?> unsub=jdyke@stripped
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > > >
> > > > --
> > > > MySQL General
> > > Mailing List
> > > > For list archives: http://lists.mysql.com/mysql
> > > > To unsubscribe:
> > > http://lists.mysql.com/mysql?> unsub=saqib@stripped
> > > >
> > > >
> > >
> > > --
> > >
> > > MySQL General Mailing List
> > >
> > > For list archives: http://lists.mysql.com/mysql
> > > To unsubscribe:
> > > http://lists.mysql.com/mysql?> unsub=jfrisby@stripped
> > >
> > >
> >
> >
>
> -- 
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:
http://lists.mysql.com/mysql?unsub=1
>


Thread
Foreigner keys in MySQL?Juliana Gubert Ehrensperger28 Oct
  • RE: Foreigner keys in MySQL?Michael McTernan28 Oct
  • Re: Foreigner keys in MySQL?Peter Brawley28 Oct
  • Re: Foreigner keys in MySQL?bluejack28 Oct
    • Re: Foreigner keys in MySQL?Martijn Tonies28 Oct
      • Is MySQL Relational? (was: Foreigner keys in MySQL?)bluejack28 Oct
        • Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)Martijn Tonies28 Oct
      • Re: Foreigner keys in MySQL?shrek-m@gmx.de28 Oct
RE: Foreigner keys in MySQL?John Griffin28 Oct
Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)jeffrey_n_Dyke28 Oct
  • Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)Saqib Ali28 Oct
RE: Is MySQL Relational? (was: Foreigner keys in MySQL?)Saqib Ali28 Oct
Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)bluejack28 Oct
Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)Heikki Tuuri28 Oct
  • RE: Is MySQL Relational? (was: Foreigner keys in MySQL?)Mike Brando28 Oct
    • Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)Martijn Tonies29 Oct
Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)Peter Brawley28 Oct
Re: Is MySQL Relational? (was: Foreigner keys in MySQL?)Martijn Tonies29 Oct