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" <[EMAIL PROTECTED]> 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:[EMAIL PROTECTED] > > > Sent: Tuesday, October 28, 2003 8:47 AM > > > To: [EMAIL PROTECTED] > > > Cc: [EMAIL PROTECTED] > > > 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 [EMAIL PROTECTED] 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 > > > > <[EMAIL PROTECTED] To: > > > [EMAIL PROTECTED] > > > > 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" <[EMAIL PROTECTED]> 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?> [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > MySQL General > > > Mailing List > > > > For list archives: http://lists.mysql.com/mysql > > > > To unsubscribe: > > > http://lists.mysql.com/mysql?> [EMAIL PROTECTED] > > > > > > > > > > > > > > -- > > > > > > MySQL General Mailing List > > > > > > For list archives: http://lists.mysql.com/mysql > > > To unsubscribe: > > > http://lists.mysql.com/mysql?> [EMAIL PROTECTED] > > > > > > > > > > > > -- > MySQL General Mailing List > For list archives: http://lists.mysql.com/mysql > To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED] > -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]