Just because you work with SQL Server does not make you a master at it. But by taking the time and learning SQL’s underlying theory, you have the best guarantee that your SQL code will be correct and that your system will be robust and maintainable. In SQL And Relational Theory Master Class, you will learn how to apply relational theory directly to the your use of SQL.
With the use of video training, SQL And Relational Theory Master Class goes beyond the book; through the use of many examples, Chris Date (evangelist to his mentor E.F. “Ted” Codd, the inventor of the relational model for database management) will show how to really understand relational theory so you can become a master.
Normally, this class is taught by the instructor over the course of three days. This video is divided in to 31 separate sections of reasonable length to take in one at a time and it runs 16 hours in total. I have broken this material down into 14 topic areas that are covered.
1. “Setting the Scene” reviews relational model basics and looks at the important properties of relations. It also introduces a crucial logical difference between relation values and relation variables.
2. “Types and Domains” shows that relations are defined over types (also known as domains) and so a basic understanding of elementary type theory is a prerequisite to understanding SQL theory.
3. “Tuples and Relations, Rows and Tables” takes a careful look at tuples and relations (what are referred to as rows and tables, in SQL parlance) which are the fundamental building blocks of the relational model.
4. “No Duplicates, No Nulls” are two of the most obvious SQL departures from the relational model. That is, based off of Codd’s model, duplicate records were not allowed. Duplicate entries are a product of database committees and DBMS developers. This session explains in detail what some of the problems those departures have caused, and why duplicates and nulls should be avoided.
5. “Base Relvars, Base Tables” takes a closer look at certain important concepts with regard to SQL. These are updating, keys, and relvar predicates that apply to relvars rather than to relations. The session also introduces the all-important “Closed World Assumption.”
6. “SQL and Relational Algebra I: The Original Operators” gives a detailed examination of the original relational operators (join, etc.), as well as certain ancillary but important issues such as the significance of proper attribute (or column) naming.
7. “SQL and Relational Algebra II: The Original Operators” now discusses the various additional operators and algebraic concepts such as matching, extend, aggregation, image relations, and a variety of related issues.
8. “SQL and Constraints” takes a look at constraints and how these are one of the most important database topics of all. Because of the fact that they’re also widely misunderstood, this session examines constraints in depth, and debunks a few myths along the way.
9. “SQL and Views” now takes on another topic that is also misunderstood. Like constraints, views are surrounded by numerous misconceptions. This session sets the record straight. It also introduces the important “Principle of Interchangeability.”
10. “SQL and Logic I: Relational Calculus” is important for the underlying understanding of SQL. This session is a tutorial on elementary logic for database practitioners. In particular, it shows how logic is directly supported in the relational model, in the form of the relational calculus.
11. “SQL and Logic II: Using Logic to Write SQL” examines how the previous section can be applied to SQL. In this session you will see how ideas from the relational calculus can help in the construction of SQL code that’s virtually guaranteed to be correct.
12. “Miscellaneous Topics” is something of a cornucopia of ideas. It discusses a few SQL features that, for one reason or another, don’t fit very neatly into any of the previous sessions.
13. “The Relational Model” is really the beginning of what in a book would be the appendices. This session is the first of three appendices to the main body of the seminar. Among other things, it offers a precise definition of the relational model, and it offers strong evidence to support the contention that the relational model will stand the test of time.
14. “Database Design Theory” now takes a look at certain aspects, unfamiliar and familiar, of logical design theory. The familiar aspects are essentially normalization and de-normalization and are presented from a novel point of view.
As with the book that this training was based on, SQL And Relational Theory Master Class is not for beginners to the world of SQL. It is for database professionals who want to pursue mastery of their craft. There is a lot of technical information here. While he does not use the book directly in the training, it would be helpful to have it at hand as well.