Search code examples
databasedatabase-normalizationdecompositionthird-normal-form

Trouble decomposing to 3rd Normal Form (DB)


I've recently started studying Data Bases but I'm struggling with this specific part.

I've read the definition of each Normal Form but I still can't seem to understand. Here's an example that I couldn't solve properly:

**R(A,B,C,D,E,F)**
A->B; B->CD; AD->E

Solution: R1(*A*,B,E); R2(*B*,C,D); R3(*A*,*F*)

I can't understand why the R3 is like that


Solution

  • R3 is to make sure it is in 2nd Normal Form and there is no update anomaly. F in R1 would lead to duplicate rows of A,B,E where there are multiple F values for A. B and E values might be either ambiguous or completely redundant.