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.


Assembly x64 Programming

Author: Mike McGrath
Publisher: Easy Steps
Date: November 2021
Pages: 192
ISBN: 978-1840789522
Print: 1840789522
Kindle: ‎B09FTNN4P5
Audience: Developers wanting to learn assembler
Rating: 5
Reviewer: Harry Fairhead
Assembler, why would you want to learn that!

High Performance SQL Server, 2nd Ed (Apress)

Author: Benjamin Nevarez
Publisher: Apress
Pages: 420
ISBN: 978-1484264904
Print: 1484264908
Kindle: B08TQR3NMF
Audience: SQL Server DBAs and Devs
Rating: 4.5
Reviewer: Ian Stirk

This book aims to improve the performance of your SQL Server, how does it fare?

More Reviews



Last Updated ( Saturday, 30 July 2016 )