in Databases
1,467 views
1 vote
1 vote
if you are given table like R(A,B,C,D,E,F)= {AB$\rightarrow$C, BC $\rightarrow$ A, AC$\rightarrow$ B , B $\rightarrow$ D , D$\rightarrow$ E }

How many tables are required in each normal form

A- 2NF

B- 3 NF

C- BCNF

please illustrate 2NF only
in Databases
1.5k views

4 Comments

@Utkarsh Joshi

We can decompose R as R1(A,B,C) and R2(B,D,E)

where is F ?

if you add F in R1 then it will lead to PFD, isn't it?

for 2NF, it requires 3 tables i.e., one of the decomposition is R1(A,B,C) , R2(B,D,E) and R3(A,C,F)

for 3NF/BCNF, it requires 4 tables i.e., one of the decomposition is R1(A,B,C) , R2(B,D) R4(D,E) and R3(A,C,F)

0
0

Shaik Masthan the thing is i completely forgot to take F in consideration i thought we are having just ABCDE as F was not part of any FD.

0
0
i expected brother...
1
1

1 Answer

1 vote
1 vote

11 Comments

yeah exactly F should be separate for BCNF decomposition . But the decomposition may not be lossless.. As spurious tuples may be there while recombining the tables through a join
1
1

does seperate F make sure that loss less join occurs?

i had broke the relation as    ABF , ABC , BD , DE

correct me if I am wrong.

2
2
Why to create seperate table for ABF and ABC I'm unable to access that link.Someone please explain?
0
0

its actually a image 

1
1
Hitendra Singh. You are probably right as it makes the decompostion lossless.
1
1

@Soumya+Tiwari

have you got ur explanation?

1
1
Yes many thanks :)
0
0
ABCF ,BD,DE

in this decomposion why ABCF in not in bcnf

help me i am not able to understand
0
0
Clearly F should be a part of the key, as F is not on the RHS of any functional dependency. So clearly either ABF, ACF, BCF should be separated which will not have any functional dependency. Thus the division as done by hitendra is perfect.
1
1
as given first three FD's are made of A,B,C

In every AB→C, BC → A, AC→ B we will get a subset of C.K {ABF,ACF,BCF} LHS of the FD's are subset these will violate 2NF condition .so we have to split

I hope you get it ,

revert back if u didn't.
2
2
thanks @hitendra singh @tejasv
0
0

Related questions