This appendix gives a short list of suggestions for further reading. I apologize for the fact that the majority of the references are to publications for which I'm either the author or a coauthor....They're in chronological order by date of first publication.
Robert R. Stoll: Sets, Logic, and Axiomatic Theories. San Francisco, Calif.: W. H. Freeman and Company (1961).
The relational model is, of course, solidly founded on logic and set theory. This book provides a fairly formal but not too difficult introduction to these topics. See also the book by Hodges, later.
E. F. Codd: "Derivability, Redundancy, and Consistency of Relations Stored in Large Data Banks," IBM Research Report RJ599 (August 19th, 1969); "A Relational Model of Data for Large Shared Data Banks," CACM 13, No. 6 (June 1970).
The 1969 paper was Codd's very first paper on the relational model; essentially it's a preliminary version of the 1970 paper, with a few interesting differences. That 1970 paper which was republished in "Milestones of Research," CACM 26, No. 1 (January 1982) and elsewhere was the first widely available paper on the subject. It's usually credited with being the seminal paper in the field, though that characterization is a little unfair to its 1969 predecessor. In my strong opinion, every database professional should read one or both of these papers every year. Exercise: This latter sentence (not counting that initial "In my strong opinion," of course) is a business rule! Try casting it into the formalism of Appendix A.
C. J. Date: An Introduction to Database Systems, Eighth Edition. Boston, Mass.: Addison-Wesley (2004). The first edition of this book was published in 1975
A college-level text on all aspects of database management. SQL discussions are at the SQL:1999 level, with a few comments on SQL:2003.
Patrick Hall, Peter Hitchcock, and Stephen Todd: "An Algebra of Relations for Machine Computation," Conf. Record of the 2nd ACM Symposium on Principles of Programming Languages, Palo Alto, Calif. (January 1975).
This paper is perhaps a little "difficult," but I think it's important. In particular, the version of the relational algebra I've described in this book has its roots in this paper.
Wilfrid Hodges: Logic. London, England: Penguin Books (1977).
This book is a very gentle introduction to logic for the uninitiated.
C. J. Date and Hugh Darwen: A Guide to the SQL Standard, Fourth Edition. Reading, Mass.: Addison-Wesley (1997). The first edition of this book was published in 1987.
A complete tutorial reference and critical guide to the SQL standard as of 1997. Although that version of the standard has since been superseded, first by SQL:1999 and then by the current standard SQL:2003, just about everything in the book is still accurate and applicable today.
Jim Gray and Andreas Reuter: Transaction Processing: Concepts and Techniques. San Mateo, Calif.: Morgan Kaufmann (1993).
The standard text on transaction management.
E. F. Codd and C. J. Date: "Much Ado about Nothing," in C. J. Date, Relational Database Writings 1991-1994. Reading, Mass.: Addison-Wesley (1995). The article was also published on the web site www.dbdebunk.com (February 2005).
Codd was perhaps the foremost advocate of nulls and 3VL as a basis for dealing with missing information (a curious state of affairs, you might think, given that nulls violate Codd's own Information Principle). This article contains the text of a debate between Codd and myself on the subject. It includes the following delightful remark: "Database management would be easier if missing values didn't exist" (Codd). Note: I've included this particular reference out of a huge number of available publications on the topic because it at least touches on most of the arguments on both sides of the issue.
Hugh Darwen: "What a Database Really Is: Predicates and Propositions," in C. J. Date, Relational Database Writings 1994-1997. Reading, Mass.: Addison-Wesley (1998).
A very approachable tutorial on relvar predicates and related matters.
C. J. Date and Hugh Darwen: Databases, Types, and the Relational Model: The Third Manifesto, Third Edition. Reading, Mass.: Addison-Wesley (2006). The first edition of this book appeared (under a different title) in 1998.
An advanced (graduate-level?) text on database technology. It includes a comprehensive definition of the language Tutorial D,which I use as a basis for examples throughout the body of the present book. Don't be fooled by that 2006 copyright date, by the way; the book is actually due to be published in 2005.
Fabian Pascal: Practical Issues in Database Management: A Reference for the Thinking Practitioner. Boston, Mass.: Addison-Wesley (2000).
This book focuses on a number of common database issues normalization, redundancy, integrity, missing information, and others and discusses theoretically correct approaches to those issues, with the emphasis on the practical application of that theory.
C. J. Date: The Database Relational Model: A Retrospective Review and Analysis. Reading, Mass.: Addison-Wesley (2001).
An unbiased retrospective review and analysis of Codd's relational contribution as documented in the papers he published in the period 1969-1979.
C. J. Date: "Double Trouble, Double Trouble" (in two parts), www.dbdebunk.com (April 2002).
A detailed treatment of the problems caused by duplicates. The discussion of duplicates in chapter 3 is based on an example from this paper.
Jim Melton and Alan R. Simon: SQL:1999 Understanding Relational Components; Jim Melton: Advanced SQL:1999 Understanding Object-Relational and Other Advanced Features. San Francisco, Calif.: Morgan Kaufmann (2002 and 2003, respectively).
So far as I know, these two books are the only comprehensive tutorials available on all aspects of SQL:1999 (the immediate predecessor of the current standard SQL:2003). Melton was the editor of the SQL standard for many years.
C. J. Date, Hugh Darwen, and Nikos A. Lorentzos: Temporal Data and the Relational Model. San Francisco, Calif.: Morgan Kaufmann (2003).
Some indication of what this book covers can be found in chapter 8 of the present book.
Hugh Darwen: "How to Handle Missing Information Without Using Nulls" (presentation slides), www.thethirdmanifesto.com (May 9th, 2003).
In Chapter 7 of the present book, I briefly touched on a technique for representing missing information without using nulls. This presentation elaborates on another such technique, similar but not identical to the one mentioned in Chapter 7.
C. J. Date: "What First Normal Form Really Means," www.dbdebunk.com (June 2003).
First normal form has been the subject of much misunderstanding over the years. This paper is an attempt to set the record straight even to be definitive, as far as possible. The crux of the argument, as indicated in chapter 2 of the present book, is that the concept of atomicity (in terms of which first normal form was originally defined) has no absolute meaning.
C. J. Date: "A Sweet Disorder," www.dbdebunk.com (August 2003).
Relations don't have a left-to-right ordering to their attributes, but SQL tables do have such an ordering to their columns. This paper explores some of the consequences of this state of affairs, which turn out to be rather less trivial than you might think.
C. J. Date: "On the Notion of Logical Difference," "On the Logical Difference Between Model and Implementation," and "On the Logical Differences Between Types, Values, and Variables" (in two parts), www.dbdebunk.com (July 2004).
The titles say it all.
C. J. Date: "Data Redundancy and Database Design" (in three parts),www.dbdebunk.com (March/April/May 2005).
A discussion of the theory (such as it is) of database design, with the emphasis on reducing data redundancy. In particular, the paper includes a detailed treatment of The Principle of Orthogonal Design.
C. J. Date: Go Faster! The TransRelational™ Approach to DBMS Implementation. To appear.
A detailed tutorial on The TransRelational? Model (see Chapter 7 of the present book).