Relational Theory for Computer Professionals
Relational Theory for Computer Professionals

Author: C.J. Date 
Publisher: O'Reilly
Pages: 278
ISBN: 9781449369439
Audience: SQL Developers
Print: 144936943X
Kindle: B00CXXZ6PQ

Rating: 5
Reviewer: Kay Ewbank

This book tells you what relational databases are all about in terms of the underlying relational theory, how that works and why it matters. Despite the academic material, it’s a good and easy read.

Chris Date is one of the big hitters of the database world, and various of his books are standards of the topic. The subtitle of this book is ‘what relational databases are really all about’, and it’s worth saying at the outset that this is not a book that’s attempting to teach you SQL or turn you into someone who can program or administer databases. Instead, Date has set out to help you gain an in-depth understanding of the relational model, how it works and what it means.

There are other titles by Date that take a different route through the material; for example Jo Celko reviewed Database Design and Relational Theory, in which Date starts with the database rather than the relational theory, but in this book he takes the approach of first getting the theory straight in your head.

As with other books written by Date, he illustrates his examples using his own programming language (Tutorial D), which he developed to provide a better fit for the relational model than SQL.




As he points out in the introduction, SQL and the relational model aren’t the same thing, and a lot of SQL databases that are called ‘relational’ aren’t actually that relational. The exercises at the end of each chapter are an excellent element throughout the book, and the answers are provided so you’re not left baffled if you can’t work it out.

Date gives formal definitions of the concepts he introduces, and the book is content heavy – you can’t skip a page or two and expect to keep up later on. If this is putting you off, don’t worry; Chris Date is an excellent communicator who writes in a very accessible way. What this means is that the majority of the text is a really easy read, and it’s just the formal definitions where you’re going to have to think hard.

The book is divided into three main parts and a collection of appendices. Part one introduces the relational model with the theory that underpins relational database technology. Part two looks at transactions and database design, and part three covers SQL, showing how the concepts from part one have been interpreted in the SQL language as used today.

The chapters in part one start with basic database concepts (what’s a database, what’s a relational DBMS); then go on to look at relations and relvars. Relvars, relation variables, are one of the key concepts used to define relational theory; essentially a relation is what we usually call a table, and as a table can contain different values it’s a variable. Read the chapter to get a more accurate description! Part one continues with chapters on keys and foreign keys, two excellent chapters on relational operators, a great chapter on constraints and predicates, and finishes with a chapter defining the relational model.




Having been in the esoteric realm of tuples and relvars, part two descends to topics database users would find more recognizable – transactions and database design. The chapter on database design discusses the different normal forms, including the Boyce/Codd normal form, which is the most important one in practice.

The final part of the book gets more practical, with good discussions of how SQL fits with relational theory. Date discusses SQL tables, then has two really good chapters on SQL operators. He then looks at SQL constraints before finishing with a comparison of SQL versus the relational model.

The appendices are as interesting as the rest of the book, with two in particular – set theory and relational calculus – being packed with information. A book on relational theory might sound as though it’s of purely academic use, but knowing the theory underpinning databases does make you design your databases differently. If nothing else, at least when someone starts pontificating about whether your schema conforms to third normal form you’ll have the ultimate put down of being able to tell them you’re using the Boyce/Codd normal form which is much better!

The material is well written and the explanations are concise and straightforward. Date isn’t just a database star, he’s a good writer too.

Related Reviews

Database Design & Relational Theory  Joe Celko's 5-star review of companion volume




Beautiful JavaScript

Editor:  Anton Kovalyov
Publisher: O'Reilly
ISBN: 978-1449370756
Kindle: B013VQ7N3G
Audience: Intermediate JavaScript Programmers
Rating: 4.5
Reviewer: Ian Elliot

Can JavaScript be beautiful? There are a lot of programmers who don't think so. 

Joe Celko’s SQL for Smarties Advanced SQL Programming 5th Ed

Author: Joe Celko
Publisher: Morgan Kaufmann
Pages: 854
ISBN: 9780128007617
Print: 0128007613
Kindle: B00R17NZZC
Aimed at: Advanced SQL developers or computer science students
Rating: 5
Reviewed by: Kay Ewbank

This is a must-read book for any SQL programmer, covering advanced topics in an understandable wa [ ... ]

More Reviews

Last Updated ( Wednesday, 21 January 2015 )

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