in Databases
1,178 views
1 vote
1 vote
Does any normal form impose the condition "every non-key should depend upon every key"?
in Databases
by
1.2k views

2 Comments

Do you mean by  every non-key attribute is fully functionally dependent on the whole key? If yes then then this condition is required by 2NF.
0
0
I am not getting your problem
0
0

2 Answers

1 vote
1 vote

1NF: Every relation should contain only one value in attribute column. Hence, no non-key attribute need not depend upon all keys.

2NF: There should not be partial dependency i.e a non-key attribute should not depend on some part of CK.

 ex: R(ABCDEF) with CKs are AB, C. And FDs are AB -> E , C -> D and A->F.

Here A->F is a partial dependency, hence it is not in 2NF. According to your statement

"every non-key should depend upon every key" need to be true.

let FDs are AB -> E and CD -> F is in 2NF, according to your statement, even F should depend on AB, but it need not be. Hence the above statement is not TRUE for 2NF.

Even for 3NF and BCNF it can be proved, that the given statement need not be TRUE.

Please correct me if I am wrong.

0 votes
0 votes
This constraint make it in 2NF. partial dependency won't be possible.

4 Comments

@Rupendra

B-> E is partial dependancy for Sure.

But we cant say the above dependancy makes A as CK, from the given CK set, AB as a whole is CK. How the dependancy makes A as CK?
0
0
Hello Anil. Certainly i made mistake here. I'm surprised how did i conclude this.

sorry for my wrong answer .

this condition won't guarantee about 2NF.

here is the counter example.

R(ABCD)

and AB->CD and B->D

so CK={AB} so C,D both are (non prime attributes) dependent on CK (AB)  and here is only one CK but dependency B->D is partially dependent which make it in 1NF not in 2NF.

am i right this time?
0
0
Yes Rupendra,
0
0