The Gateway to Computer Science Excellence

+6 votes

BCNF is not used for cases where a relation has

- Two (or more) candidate keys
- Two candidate keys and composite
- The candidate key overlap
- Two mutually exclusive foreign keys

+5 votes

**Answer B)**

A) possible for BCNF. As in BCNF in X-> a transition we take all X as super key and it should be in 3 NF

C) possible

Say a relation AB -> CD

AC -> BD

AD -> BC

All left side are candidate keys and it is in 3NF , So also in BCNF

D) Mutually exclusive foreign keys not a problem for that relational table and also constructing a BCNF

0

Candidate keys are composite

then there is a chance of partial dependency

if partial dependency is there , then relation is not in 2NF

then there is a chance of partial dependency

if partial dependency is there , then relation is not in 2NF

0

Candidate keys are composite then there is a chance of partial dependency; It is okay. If there is no partial dependency then no problem to take composite key as case for BCNF. So I think except D option all are cases for BCNF.

What about the option D, I am not getting meaning of this?

What about the option D, I am not getting meaning of this?

+3

Composite Key is a key which is combination of more than one field or column of a given table. It can be a Candidate key, Primary key. So, a table with combination of its primary key and candidate key can be called as composite key.

Let R(A,B,C,D)

AB->CD and AC->BD. These keys are composite as well as candidate and the relation is in BCNF.

I think the answer must be d by option elimination but i don't really get the meaning of it.

http://sql-plsql.blogspot.in/2013/06/difference-candidate-composite-key.html

+4

I think C is more correct than B because overlap between keys can happen only when they are composite.

Ex- $AB\rightarrow C$, $C\rightarrow B $. Here both $AB$ and $AC$ are keys, they overlap in A, and this relation is not in BCNF.

Ex- $AB\rightarrow C$, $C\rightarrow B $. Here both $AB$ and $AC$ are keys, they overlap in A, and this relation is not in BCNF.

0 votes

bcnf is not used meaning... relation can never be in bcnf if this criteria holds..

for A) B) C) we can make numerous examples that can be bcnf....and also numerous examples that can't be..

for D) relation(synonymous to table) has 2 mutually exclusive foreign keys meaning...

say R(abcdef) here a is key...d,f are referring to a ; so both of them are f.key. now as they are mutually exclusive we always have d-->f which is non-key ---> non-key

so this can't ever be a bcnf..

for A) B) C) we can make numerous examples that can be bcnf....and also numerous examples that can't be..

for D) relation(synonymous to table) has 2 mutually exclusive foreign keys meaning...

say R(abcdef) here a is key...d,f are referring to a ; so both of them are f.key. now as they are mutually exclusive we always have d-->f which is non-key ---> non-key

so this can't ever be a bcnf..

52,345 questions

60,484 answers

201,814 comments

95,289 users