O'Reilly logo

Database Design and Relational Theory by C.J. Date

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

BOYCE/CODD NORMAL FORM

With a proper understanding of FDs under our belt, as it were, I can now go on to tackle the question of what it means for a relvar to be in BCNF. Again I proceed by means of a series of precise definitions.

  • Definition: Let XY be an FD, F say, with respect to heading H. Then F is trivial if and only if it’s satisfied by every relation with heading H.

Now, in Chapter 4 I defined a trivial FD to be one that can’t possibly be violated. There’s nothing wrong with that definition, of course; however, the one just given is preferable because it explicitly mentions the pertinent heading. I also said in Chapter 4 that it’s easy to see the FD XY is trivial if and only if Y is a subset of X. Well, that’s true too; but I can now say that this latter fact isn’t really a definition but rather a theorem, easily proved from the definition as such. (On the other hand, the definition as such isn’t very helpful in determining whether a given FD is trivial, whereas the theorem is. For that reason, we might regard the theorem as an operational definition, inasmuch as it does provide an effective test that can easily be applied.)[46] Let me state the theorem explicitly for the record:

  • Theorem: Let XY be an FD, F say. Then F is trivial if and only if the dependant Y is a subset of the determinant X.

Now back to the definitions:

  • Definition: A superkey of relvar R is a subset SK of the heading H of R such that the FD SKH holds in R (“is an FD of R”). That FD is a superkey ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required