You are on page 1of 1

BCNF 

(Boyce Codd Normal Form) is an advanced version of the third normal form (3NF),
and often, it is also known as the 3.5 Normal Form. 3NF doesn't remove 100%
redundancy in the cases where for a functional dependency (say, A->B), A is not the
candidate key of the table. To deal with such situations, BCNF was introduced.

BCNF is based on functional dependencies, and all the candidate keys of the relation are
taken into consideration. BCNF is stricter than 3NF and has some additional constraints
along with the general definition of 3NF.

A table or relation is said to be in BCNF in DBMS if the table or the relation is already in
3NF, and also, for every functional dependency (let's say, X->Y), X is either the super key
or the candidate key. In simple terms, for any case (let's say, X->Y), X can't be a non-prime
attribute.

A table or relation is said to be in BCNF (Boyce Codd Normal Form) if it satisfies the
following two conditions that we have already studied in its definition:

 It should satisfy all the conditions of the Third Normal Form (3NF).
 For any functional dependency (A->B), A should be either the super key or
the candidate key. In simple words, it means that A can't be a non-prime attribute if
B is given as a prime attribute.
 BCNF (Boyce Codd Normal Form) is an advanced version of the third normal form
(3NF), and often, it is also known as the 3.5 Normal Form.
 A relation is said to be in BCNF in DBMS if the relation is already in 3NF, and also, for
every functional dependency (say, X->Y), X is either the super key or the candidate
key. In simple terms, X can't be a non-prime attribute.
 If ant relation R is found to be in BCNF, it simply means that the relation R is also
in 3NF, 2NF, and 1NF.
 The 3NF in DBMS has more restrictions and strict constraints than the first two
normal forms, but it is less strict than the BCNF.

You might also like