0% found this document useful (0 votes)
3 views2 pages

Normalization

Boyce-Codd Normal Form (BCNF) is an advanced database normalization technique that ensures every functional dependency's left side is a superkey, thus reducing redundancy. It is stricter than 3NF and prevents anomalies by ensuring that all determinants are candidate keys, improving database design and consistency. To verify BCNF, one must identify all determinants and confirm they are candidate keys, as a relation in BCNF is also in 3NF, 2NF, and 1NF.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views2 pages

Normalization

Boyce-Codd Normal Form (BCNF) is an advanced database normalization technique that ensures every functional dependency's left side is a superkey, thus reducing redundancy. It is stricter than 3NF and prevents anomalies by ensuring that all determinants are candidate keys, improving database design and consistency. To verify BCNF, one must identify all determinants and confirm they are candidate keys, as a relation in BCNF is also in 3NF, 2NF, and 1NF.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

BOYCE CODD NORMAL FORM

 Boyce-Codd Normal Form (BCNF) is an advanced version


of 3NF used to reduce redundancy in databases.
 It ensures that for every functional dependency, the left
side must be a superkey.
 This helps create cleaner and more consistent database
designs, especially when there are multiple candidate
keys.
 To test whether a relation is in BCNF, we identify all the
determinants and make sure that they are candidate
keys.
Key Notes:
1. To verify BCNF, identify all determinants (left side of FDs)
and check whether each is a candidate key.
2. If a relation is in BCNF, it is automatically in 3NF, 2NF,
and 1NF as well.

The normal forms become stricter as we move from 1NF →


2NF → 3NF → BCNF:
 1NF: Each field must hold atomic (indivisible) values.
 2NF: No partial dependency on a primary key.
 3NF: No transitive dependency on a primary key.
 BCNF: Every determinant must be a candidate key.
This progression ensures better structure and removes
redundancy at each level.

Why Do We Need BCNF?


 2NF and 3NF may allow anomalies if a functional
dependency exists where the determinant is not a
superkey.
 BCNF handles edge cases where 3NF fails to remove all
redundancy, especially in tables with multiple candidate
keys.
 Prevents update, insert, and delete anomalies by
ensuring every determinant is a superkey.
 Makes database design more robust and easier to
maintain over time.
 Improves data consistency and clarity by removing
hidden or indirect dependencies.

EXAMPLE 1

Consider a relation R with attributes (student, teacher,


subject).

FD: { (student, Teacher) -> subject, (student, subject) ->


Teacher, (Teacher) -> subject}

To test whether a relation is in BCNF, we identify


all the determinants and make sure that they are
can

You might also like