Re: BCNF: superkey or candidate key ?
Date: Mon, 25 Sep 2006 18:02:17 GMT
"An Introduction to Database Systems", 8th Ed., C.J. Date, Jul 2003, p.368:
A relvar in in BCNF if and only if every nontrivial, left-irreducible FD has a candidate key as its determinant.
Or less formally:
A relvar is in BCNF if and only if every determinant is a candidate key.
To me the first definition dismisses the case where there are NO nontrivial FDs and the relation schema should be deemed BCNF. The ones that seem most appealing are those such as the following (I think these come originally from Zaniolo).
"Database System Concepts", 5th Ed, Silberschatz/Korth/Sudarshan, May 2005,
A relation scheme R is in BCNF with respect to a set F of function dependencies if, for all functional dependencies in F+ of the form A ->B, where A is a subset of R and B is a subset of R, at least one of the following holds:
(a) A -> B is a trivial functional dependency (that is, B is a supset of A).
(b) A is a superkey for schema R.
So an R that has only a two-field primary key, is in BCNF. Received on Mon Sep 25 2006 - 20:02:17 CEST