Given E(ABCDE) ABC are candidate keys

Normalize into 2NF and 3NF

As far as 2NF is concerned the solution is quite easy:

E1(BD), E2(DE), E3(ABC) 

But with regard to 3NF I think I'm wrong if I say that nothing should be done.

Maybe the 3NF schema is:

E1(ABC), E2(BD) 

Is it correct?

Thanks a lot

So according to @OliverAsmus the 3NF result should be:

E1(ABC), E2(BD) 

But if what I wrote is correct, am I right in thinking that the 3NF (in this particular case) doesn't preserve all the attributes? E doesn't depend upon any key so I got rid of it...

Is that correct? Thanks

  • Surely this must be homework? The only normal forms that are of any interest are 6NF, 5NF and BCNF, unless you are an old school academic or are being taught by one ;)
    – onedaywhen
    Jan 24, 2012 at 8:59

2 Answers 2


You're on the right track. Look closely at your 2NF result - this is where the 3NF result will come from. Your next task would be to take the 2NF result and eliminate the fields that do not depend on the key.

There are numerous sources for how and why to do this, but I prefer Microsoft's explanation the best:



Do you mean that there are three candidate keys: A, B and C? If so, your FDs are A-> BCDE, B-> ACDE and C-> ABDE. If there are no other FDs connecting these attributes, you can stop there: you are already in BCNF (and also 3NF).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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