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.


Understanding the Digital World

Author: Brian W. Kernighan
Publisher: Princeton University Press
Date: February 2017
Pages: 256
ISBN: 978-0691176543
Print: 069117654X
Kindle: B01M3XBS46
Audience: Non programmers
Rating: 5
Reviewer: Kay Ewbank

This is an interesting book looking behind the scenes at hardware, software, and commun [ ... ]

Eloquent JavaScript (2e)

Author: Marijn Haverbeke
Publisher: No Starch Press
Pages: 472
ISBN: 978-1593275846
Print: 1593275846
Kindle: B00QL616UU
Audience: Complete begiiners
Rating: 3
Reviewer: Ian Elliot


Is this the "modern introduction to programming" that its subtitle claims it to 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.