Appendix B. Database Design Theory

THE GOAL OF PHYSICAL DATA INDEPENDENCE, DISCUSSED IN Chapter 1, has the direct consequence that logical and physical database design are different disciplines—logical design is concerned with what the database looks like to the user, physical design is concerned with how the logical design maps to physical storage. But the term database design theory is used almost exclusively in connection with logical design, not physical design (the point being that physical design is necessarily dependent on details of the target DBMS, whereas logical design is or should be DBMS independent). For that reason, in this appendix I’ll use the unqualified term design to mean logical design specifically, until further notice.

One point I want to stress right away is this. Recall that “the” (total) relvar constraint for relvar R can be regarded as the system’s approximation to the relvar predicate for R; recall too that the predicate for R is the intended interpretation, or meaning, for R. It follows that constraints and predicates are highly relevant to the business of logical design; indeed, logical design is, in essence, precisely a process of pinning down the predicates as carefully as possible and then mapping those predicates to relvars and constraints. Of course, those predicates are necessarily somewhat informal (as noted in Chapter 8, they’re what some people like to call business rules); by contrast, the relvar and constraint definitions are necessarily formal. ...

Get SQL and Relational Theory now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.