Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a knotty (at least for me) problem to solve.

Normalize, with respect to Boyce Codd NF, the relational scheme 

E(A, B, C, D, E, F) 

by assuming that (A, B, C) is the unique candidate key and that the 
following additional functional dependencies hold:

    A,B -> D
    C,D -> E
    E -> A 

Actually what I did is:

E1(ABCEF) , E2(ABD), E3(ABCDF), E4(CDE) then I added E5(ABC) and E6(EA) getting the final result:

E1(ABC), E2(ABD), E3(CDE), E4(EA)

Unfortunately, what I wrote is wrong....Can anyone help me?

share|improve this question

migrated from Jan 16 '12 at 15:05

This question came from our site for professional and enthusiast programmers.

What happened to "F"? – Mike Sherrill 'Cat Recall' Jan 15 '12 at 21:45
you're right ..actually that proves the fact I made a big mistake... – user962800 Jan 15 '12 at 21:59
Of course I have to include F since as an attribute I shouldn't get rid of it.But if you look at the functional dependency F doesn't appear... – user962800 Jan 15 '12 at 22:17
If {ABC} is a candidate key, then ABC->DEF. Therefore, ABC->D, ABC->E, and ABC->F, by Armstrong's axiom of decomposition. – Mike Sherrill 'Cat Recall' Jan 16 '12 at 0:25
I don't get it..How did you add such dependencies? I mean ABC->DEF...My reasoning was: first try to do a lossless decomposition also preserving dependencies then add the key candidate..But what I did is wrong ..Could you please explain to me in a simple way how I should solve the problem?..thanks – user962800 Jan 16 '12 at 22:13

You dropped "F" somewhere.

Since you're given {ABC} is a candidate key, then you know that ABC->DEF. (That just follows from the definition of "candidate key".) And ABC->D, ABC->E, and ABC->F, by Armstrong's axiom of decomposition.

The important part as far as BCNF is concerned is E->A.

So the final result should be: E1(ABC), E2(ABD), E3(CDE), E4(EA), E5(ABCF)

I think that's right, except for E1. You don't need a separate relation for a candidate key. I'm not sure how you derived that one given what's in the problem.

Usually, your textbook will have at least one algorithm for normalizing relations. In the real world, there's often more than one 5NF schema for a given set of FDs.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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