3

Hello Community,

To prepare for my exam I have completed many exercises. Most of them were solvable without any problems. But the following task I could not solve until now. It is:

You are given the relation scheme R (A,B,C,D) with the three functional dependencies:

  • AB → C
  • C → D
  • D → A

In which normal form is R (1st, 2nd or 3rd)? Justify your statement.

Could anyone of you please help me? A good explanation and substantiation would be very, very good!

Thank you sooo much!

P.S.: I already have one solution from a friend. But I do not know if it is correct…

He said that it is the second normal form because the non-key attributes C and D are fully functional depending on A, B. Besides he mentioned that it is not the third normal form because there is a transitive dependence between the non-key attributes (A, B → C and C → D).

  • 1
    You should first try to find all candidate keys (hint: it's not only AB, there are others). Then, you'l lbe able to proceed. – ypercubeᵀᴹ Jan 8 '18 at 11:42
  • Ok! I think the candidate keys are AB and BC. So yes it results in the second normal form, right? – VPOBS97 Jan 8 '18 at 12:15
  • 1
    What about BD? – ypercubeᵀᴹ Jan 8 '18 at 12:15
  • BD? Ok... actually yes?! Now we have AB, BC and BD. So we have no non-key attributes. This means that the second normal form is approved, because no non-key attribute partially depends on a key. So the relation scheme R must be in the third normal form? – VPOBS97 Jan 8 '18 at 12:44
  • 1
    Yes, that is correct! You may post an answer ;) It is in 3NF (but not in BCNF) – ypercubeᵀᴹ Jan 8 '18 at 12:49
2

Because we have the candidate keys AB, BC and BD, we have no non-key attributes. This means that the second normal form is approved, because no non-key attribute partially depends on a key. It follows that the relation scheme R must be in the third normal form!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.