In a relational data model, which one of the following statements is
View worked solution
Answer: A
Let us analyze each option to determine the correct statement:
-
Option A: A relation with only two attributes is always in BCNF. (TRUE)
Let be a relation with only two attributes. The only possible non-trivial functional dependencies (FDs) are and/or .
- If holds, then is a candidate key (and hence a superkey).
- If holds, then is a candidate key (and hence a superkey).
- If both hold, both and are candidate keys.
- If no non-trivial FDs hold, BCNF is trivially satisfied.
In every case, for any active non-trivial FD , the determinant is a superkey. Thus, any binary relation is always in BCNF.
-
Option B: If all attributes of a relation are prime attributes, then the relation is in BCNF. (FALSE)
Consider a relation with functional dependencies: The candidate keys are and . All attributes are prime attributes. However, for the dependency , the determinant is not a superkey. Hence, the relation is in 3NF but not in BCNF.
-
Option C: Every relation has at least one non-prime attribute. (FALSE)
In the counterexample used for Option B ( with keys and ), all attributes are prime. There are no non-prime attributes.
-
Option D: BCNF decompositions preserve functional dependencies. (FALSE)
While BCNF decomposition is always lossless, it is not always dependency-preserving. For example, decomposing with and into BCNF relations and loses the dependency .
Free practice · Your answers on this page are not saved.
