Question :

What is BCNF Boyce Codd Normal Form. Explain it.

Subject

Database Management System

Standard

Computer Science Engineering

Views

467

Asked By

Seema

Angelina
Answer / Solution

Boyce-Codd Normal Form (BCNF) is a database normalization technique used to eliminate data redundancy and improve data integrity. BCNF is an extension of Third Normal Form (3NF) and applies to tables that have more than one candidate key.

A relation is in BCNF, if and only if, every determinant is a Form (BCNF) candidate key.

In BCNF, a table is said to be in BCNF if for every functional dependency (X → Y), X is a superkey. This means that all non-key attributes in a table should be functionally dependent on the candidate keys, and not on any other non-key attributes.

To explain BCNF with an example, consider a table called "Students" with the following columns:

  • Student ID (primary key)
  • Course ID (primary key)
  • Course Name
  • Department ID (non-key attribute)
  • Department Name

In this table, both "Student ID" and "Course ID" are candidate keys. However, the non-key attribute "Department Name" is functionally dependent on "Department ID" instead of being dependent on either "Student ID" or "Course ID."

To normalize this table to BCNF, we need to split it into three tables: "Students," "Courses," and "Departments."

The "Students" table will have the following columns:

  • Student ID (primary key)

The "Courses" table will have the following columns:

  • Course ID (primary key)
  • Course Name
  • Department ID (foreign key)

The "Departments" table will have the following columns:

  • Department ID (primary key)
  • Department Name

By doing this, we have eliminated data redundancy and ensured that each table contains data that is relevant and fully dependent on the candidate keys. This allows for better data integrity and easier management of the database.

Pari
Answer / Solution

Let's discuss the example of Boyce-Codd Normal Form (BCNF). Assume there is a company where employees work in more than one department.

EMPLOYEE table:

EMP_ID EMP_COUNTRY EMP_DEPT DEPT_TYPE EMP_DEPT_NO
264 India Designing D394 283
264 India Testing D394 300
364 UK Stores D283 232
364 UK Developing D283 549

In the above table Functional dependencies are as follows:

EMP_ID  →  EMP_COUNTRY  

EMP_DEPT  →   {DEPT_TYPE, EMP_DEPT_NO}  

Candidate key: {EMP-ID, EMP-DEPT}

The table is not in BCNF because neither EMP_DEPT nor EMP_ID alone are keys. To convert the given table into BCNF, we decompose it into three tables:

EMP_COUNTRY table:

EMP_ID EMP_COUNTRY
264 India
264 India

EMP_DEPT table:

EMP_DEPT DEPT_TYPE EMP_DEPT_NO
Designing D394 283
Testing D394 300
Stores D283 232
Developing D283 549

EMP_DEPT_MAPPING table:

 

EMP_ID EMP_DEPT_NO
264 283
264 300
364 232
364 549

Functional dependencies:

EMP_ID   →    EMP_COUNTRY  

EMP_DEPT   →   {DEPT_TYPE, EMP_DEPT_NO}  

Candidate keys:

  • For the first table: EMP_ID
  • For the second table: EMP_DEPT
  • For the third table: {EMP_ID, EMP_DEPT}

Now, this is in BCNF because left side part of both the functional dependencies is a key.
 


Top Trending Questions


Recent Question Update

Explain Domain Key Normal Form DKNF with example.
Explain Project Join Normal Form PJNF with example.
Explain 4nf and 5nf with example.
What is 5nf in DBMS.
What do you mean by 4NF in DBMS. Explain with example.
What is normalization? Explain 3NF with example.
What is 2NF? How is it achieved.
What is 1NF? How do we achieve it.
What are the different normal forms in DBMS?
Brief Introduction to the Normalization.
Explain multivalued dependencies
What do you mean by lossless join? How can we test it.
What is the meaning of decomposition in DBMS? List its properties.
Explain the closure of attribute sets.
What do you mean by closure of a set of functional dependencies.
Explain the inference rules for functional dependencies in DBMS
What is the Difference between BCNF and 4NF in DBMS.
SQL Full Outer Join Using Left and Right Outer Join and Union Clause
Difference between Natural join and Inner Join in SQL
Define aggregate function in database.
Write the operations which are responsible for database modification.
Explain natural join operation.
Differentiate union, intersection and set difference operations.
Explain fundamental operations of relational algebra with example.
What do you mean by database scheme. Explain with example.
What do you mean by relational algebra?
Explain Aggregation
What do you mean by Generalization and Specialization in DBMS?
Explain superclass and subclass entity types
Describe EER Model?
What is ER Entity relationship Diagram.
Explain the concept of weak entity and strong entity.
What are the entities and attributes? Explain them.
What are keys? Discuss its types.
Define relationship sets.
What do you mean by attributes? Explain its types.
What are the limitations of a database system.
Explain database administrator and its functions
Explain different database system users
What is database abstraction. Explain its levels.
Write advantages and disadvantages of Hierarchical Data Model
Write advantages and disadvantages of Network Data Model
Write advantages and disadvantages of Relational Data Model
What are data models? Explain its types.
Write different applications of a database
What are the advantages and disadvantages of a database system
Explain Database. Explain different types of elements.

Advantages Of NCERT, CBSE & State Boards Solutions For All Subjects

  • All the NCERT Solutions have been prepared by academic experts having 10+ years of teaching experience.
  • They have prepared all the solutions in simple and easy language so that each and every student can understand the concepts easily.
  • All the solutions have been explained step to step-wise in details with better explanations.
  • Students can also use these question and answers for your assignments and in homework help.
  • All the solutions have been explained in detail and the answers have been compiled in a step-wise manner.
  • All the questions and answers are commonly prepared according to the Latest Syllabus of Board Education and Guidelines.
  • Students can know about the various types of questions asked in the exams with the help of these solutions.

Top Course Categories