SQL and Relational Theory (3rd Edition)
SQL and Relational Theory (3rd Edition)

Author: C J Date
Publisher: O'Reilly
Pages: 582
ISBN: 978-1491941171
Kindle: B017S0YPOG
Audience:SQL Developers
Rating: 4
Reviewer:Kay Ewbank

This updated edition of a classic on relational theory has added NoSQL to the mix.

Subtitled 'How to Write Accurate Code', this is a book that splits opinions. In our reviews of the earlier editions of this book, Mike James said that if you want to know about relational theory and the many normal forms that can be applied to a database, it's a really good book to get to grips with it all - so long as you're a bit of a mathematician. Joe Celko, meanwhile, (an old adversary of Chris Date) felt there was too much emphasis on Tutorial D and not enough on 'pure' SQL, instead arguing why Tutorial D is right and SQL is flawed.


Tutorial D is the language invented by Date and Darwen and used in their classic text, The Third Manifesto. That book sets out how SQL isn't ideally matched to the relational database model, and defines the characteristics that an ideal language, D, would use; essentially, an ideal language would be based on the relational calculus. No syntactical details for D were given, but an example of how it might be developed was shown in the form of Tutorial D.

Tutorial D is used widely in the book reviewed here, and to get the best out of the book you're going to need to learn enough to understand the examples and many of the points being made. If the book were titled D and Relational Theory, it would in some ways be more accurate.



Despite these reservations, this is a well written and interesting book. The revisions to this edition bring the examples up to date with the changes to the SQL standard, and the improvements to Tutorial D. One nice touch is that, in response to readers' requests, Date has increased the size, admitting that his own eyesight isn't what it used to be, either. 

The main addition to the book is an appendix on the new NoSQL systems. For those of us interested in relational theory, Date's analysis of NoSQL and its relationship with relational theory is worth buying the book for. Love him or loathe him, Chris Date is one of the big thinkers in the database arena, and his views on NoSQL are as blunt as everything else he writes. He says that in his view, NoSQL products are united in the extensive and demonstrable lack of understanding of the relational model displayed by their promoters. He goes on the the products are also united in their failure to distinguish properly between a model and its implementation.

He discusses other common problems with NoSQL - rejection of ACID transactions, data replication, functional segmentation, lack of schemas, and lack of join support. There's also an edited (and illuminating) version of the interview by Iggy Fernandez with Hugh Darwen and Chris Date for NoCOUG Journal (North California Oracle User Group).

Despite the larger font size, the book is still tough reading, as the ideas are still highly mathematical and in many cases quite abstract. I wouldn't recommend reading it if you're attempting to get to grips with SQL and want to improve your query writing. I would heartily recommend it to anyone who is interested in the thinking behind relational theory. Finally, if you want a less rosy-tinted view of NoSQL, at least read the appendix. You may not agree with all he says, but there are some real truths in there.

Related Reviews

SQL And Relational Theory (Mike James Review)

SQL And Relational Theory (Joe Celko Review)

SQL For Smarties


To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.


Data Structures and Algorithms with JavaScript

Author:  Michael McMillan
Publisher: O'Reilly
Date: March 24, 2014
Pages: 246
ISBN: 978-1449364939
Print: 1449364934
Kindle: B00IV3J23Y
Audience: Intermediate JavaScript programmers
Rating: 3.5
Reviewer: Ian Elliot

A book explaining the standard data structures in the worlds most popul [ ... ]

Java 9 for Programmers

Author: Paul J. Deitel & Harvey M. Deitel
Publisher: Prentice Hall
Pages: 1120
ISBN: 978-0134777566
Print:  0134777565
Kindle: B071S84XCK
Audience: Programmers moving to Java; students
Rating: 3.5
Reviewed by: Ian Elliot

The latest edition of the Deitel tome on Java has be [ ... ]

More Reviews



Last Updated ( Saturday, 30 July 2016 )

RSS feed of book reviews only
I Programmer Book Reviews
RSS feed of all content
I Programmer Book Reviews
Copyright © 2018 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.