In Chapter 1, I said I was interested in principles, not products, and we've encountered several principles at various points in the book. Here I list them for purposes of reference:
The Information Principle
The database contains nothing but relvars; equivalently, the entire information content of the database (at any given time) is represented in one and only one way namely, as explicit values in attribute positions in tuples in relations.
The Closed World Assumption
If tuple t could plausibly appear in relvar R at some given time but doesn't, then the proposition p corresponding to t is assumed to be false at that time.
The Principle of Interchangeability
There must be no arbitrary and unnecessary distinctions between base and virtual relvars.
The Principles of Normalization
A non-5NF relvar should be decomposed into a set of 5NF projections.
The decomposition should be nonloss.
The decomposition should preserve dependencies.
Every projection should be needed in the reconstruction process.
Decomposition should stop as soon as all relvars are in 5NF. (This one isn't as firm as the first four; indeed, there are strong arguments in favor of going all the way to 6NF, if the system is such that it allows full normalization without imposing any serious penalties for doing so.)
The Principle of Orthogonal Design
Let A and B be distinct relvars in the same database. Then there must not exist nonloss decompositions of A and B such that the relvar constraints for some projection of A and some projection of B in those decompositions are such as to permit the same tuple to appear in both of those projections.
The Assignment Principle
After assignment of the value v to the variable V, the comparison V = v must evaluate to TRUE.
The Golden Rule
No update operation must ever cause any database constraint to evaluate to FALSE.
The Principle of Identity of Indiscernibles
Let a and b be any two things (any two "entities," if you prefer); then, if there's no way whatsoever of distinguishing between a and b, there aren't two things but only one.
I didn't mention The Principle of Identity of Indiscernibles earlier in this book, but I appealed to it tacitly on many occasions. It can alternatively be stated thus: Every entity has its own unique identity. In the relational model, such identities are represented in the same way as everything else namely, by means of attribute values (see The Information Principle, earlier in this list)--and numerous benefits accrue from this simple fact.