Chapter 2: Further Reading

Foundational Papers and Books

Codd's Original Paper

  • Codd, E.F. "A Relational Model of Data for Large Shared Data Banks." Communications of the ACM, Vol. 13, No. 6, June 1970, pp. 377-387.
  • The paper that started it all. Surprisingly readable for a foundational academic paper. Available through the ACM Digital Library. Every serious database professional should read it at least once.
  • Free reprint available at: https://www.seas.upenn.edu/~zives/03f/cis550/codd.pdf

Codd's Twelve Rules

  • Codd, E.F. "Is Your DBMS Really Relational?" and "Does Your DBMS Run By the Rules?" Computerworld, October 14 and October 21, 1985.
  • The two-part article where Codd formalized his twelve rules for evaluating relational database systems. Harder to find in original form, but frequently summarized in database textbooks and online resources.

Date's Textbook (The Standard Reference)

  • Date, C.J. An Introduction to Database Systems, 8th Edition. Addison-Wesley, 2003. ISBN: 978-0321197849.
  • The definitive academic textbook on relational database theory. Comprehensive, rigorous, and opinionated. Date was a colleague of Codd's and one of the relational model's most articulate advocates. Covers normalization theory in depth far beyond what this chapter presents, including 4NF, 5NF, and domain-key normal form.

Date and Darwen on Relational Theory

  • Date, C.J. and Darwen, Hugh. Databases, Types, and the Relational Model: The Third Manifesto, 3rd Edition. Addison-Wesley, 2006. ISBN: 978-0321399427.
  • A more advanced and theoretical work, proposing how relational databases should work (as distinct from how SQL databases actually work). Recommended for readers who want to understand the gap between relational theory and SQL practice.

Kent's Normalization Guide

  • Kent, William. "A Simple Guide to Five Normal Forms in Relational Database Theory." Communications of the ACM, Vol. 26, No. 2, February 1983, pp. 120-125.
  • A concise, practical guide to normalization that remains one of the clearest explanations ever written. Covers 1NF through 5NF with examples. Often available online through university course materials.

IBM DB2 Documentation

DB2 for z/OS

  • IBM DB2 13 for z/OS Documentation
  • SQL Reference: https://www.ibm.com/docs/en/db2-for-zos/13
  • Covers all data types, CREATE TABLE syntax, constraint definitions, and catalog tables specific to the z/OS platform.
  • Pay particular attention to the "DB2 SQL Reference" volume for data type details and constraint syntax.

DB2 for LUW

  • IBM DB2 11.5 for Linux, UNIX, and Windows Documentation
  • SQL Reference: https://www.ibm.com/docs/en/db2/11.5
  • The "SQL Reference" section covers data types, CREATE TABLE, ALTER TABLE, and constraint syntax for LUW.
  • The "Database Administration Concepts and Configuration Reference" covers catalog views (SYSCAT schema).

IBM Redbooks

  • IBM Redbook: DB2 for z/OS: Data Sharing in a Nutshell (SG24-8489)
  • While focused on data sharing, contains excellent material on DB2 z/OS architecture that builds on the foundational concepts in this chapter.

  • IBM Redbook: DB2 11 for z/OS Technical Overview (SG24-8180)

  • A broad technical overview that covers data types, constraints, and catalog structure in the context of the full DB2 z/OS platform.

  • IBM Redbook: Migrating to DB2 11.5 (SG24-8486)

  • Covers newer features in DB2 LUW including BOOLEAN data type, temporal tables, and enhanced constraint capabilities.

Normalization and Data Modeling

Practical Guides

  • Hernandez, Michael J. Database Design for Mere Mortals, 4th Edition. Addison-Wesley, 2020. ISBN: 978-0136788041.
  • An approachable, practical guide to database design. Less theoretical than Date, more focused on real-world design processes. Excellent for readers who found the normalization sections of this chapter challenging.

  • Simsion, Graeme C. and Witt, Graham C. Data Modeling Essentials, 3rd Edition. Morgan Kaufmann, 2004. ISBN: 978-0126445510.

  • Covers conceptual, logical, and physical data modeling with a practitioner's perspective. Good treatment of when to denormalize and how to document design decisions.

Advanced Normalization Theory

  • Fagin, Ronald. "Normal Forms and Relational Database Operators." Proceedings of the 1979 ACM SIGMOD International Conference on Management of Data, 1979.
  • The original paper defining Boyce-Codd Normal Form (technically it was defined by Codd, but Fagin provided the rigorous treatment). For readers who want to understand BCNF at a theoretical level.

  • Vincent, M.W. "A Corrected 5NF Definition for Relational Database Design." Theoretical Computer Science, Vol. 185, No. 2, 1997.

  • For readers curious about normal forms beyond BCNF. Academic, but important for understanding the full normalization hierarchy.

Historical Context

The History of IBM and Databases

  • Chamberlin, Donald D. "Early History of SQL." IEEE Annals of the History of Computing, Vol. 34, No. 4, 2012, pp. 78-82.
  • One of SQL's co-inventors recounts its development at IBM's San Jose Research Laboratory, including the tension between the System R (relational) and IMS (hierarchical) camps within IBM.

  • Haigh, Thomas and Ceruzzi, Paul E. A New History of Modern Computing. MIT Press, 2021. ISBN: 978-0262542906.

  • Broader computing history that places the development of relational databases in context with mainframe computing, IBM's corporate strategy, and the rise of enterprise software.

IMS and the Pre-Relational World

  • IBM IMS Documentation: https://www.ibm.com/docs/en/ims
  • For readers who encounter IMS in their z/OS environments and want to understand the hierarchical model firsthand. IMS remains in active use at many large enterprises.

Online Resources

SQL and Relational Theory

  • Stanford Online — Databases Course (free, self-paced)
  • https://online.stanford.edu/courses/soe-ydatabases-databases
  • Professor Jennifer Widom's database course covers relational algebra, SQL, normalization, and database design. Video lectures with exercises.

DB2 Community

  • IBM Community — DB2: https://community.ibm.com/community/user/datamanagement/communities/community-home?CommunityKey=db2
  • Active forum for DB2 practitioners. Good for platform-specific questions about data types, constraints, and design patterns.

  • IDUG (International DB2 Users Group): https://www.idug.org

  • Professional organization for DB2 users. Hosts conferences and maintains a technical library. Membership recommended for practicing DB2 professionals.

For readers working through this chapter:

  1. Start with Kent's "Simple Guide to Five Normal Forms" — it will reinforce the normalization concepts with different examples and a very clear writing style.
  2. Read Codd's 1970 paper — even if you only read the first few pages, it will deepen your appreciation for the relational model's elegance.
  3. Browse the IBM DB2 documentation for CREATE TABLE on your target platform (z/OS or LUW) — see how the data types and constraints from this chapter map to the official syntax.
  4. If you want to go deeper into data modeling, read Hernandez for a practical approach or Date for a theoretical one.