All Exams Test series for 1 year @ ₹349 only
Question

In relational database, if a relation R is in BCNF, then which of the following is true about relation R?

The correct answer is

R is in 2NF and 3NF

Understanding Relational Database Normalization and BCNF

In relational database design, normalization is a process used to organize data to reduce redundancy and improve data integrity. This is achieved by dividing larger tables into smaller ones and defining relationships between them. Normal forms are guidelines that determine the structure of a relation based on the dependencies among its attributes. Boyce-Codd Normal Form (BCNF) is one of these normal forms.

BCNF is considered a stricter version of the Third Normal Form (3NF). To understand BCNF, it's helpful to know the hierarchy of normal forms. Each higher normal form satisfies the requirements of the normal forms below it. The hierarchy generally goes like this:

  • First Normal Form (1NF)
  • Second Normal Form (2NF)
  • Third Normal Form (3NF)
  • Boyce-Codd Normal Form (BCNF)
  • Fourth Normal Form (4NF)
  • Fifth Normal Form (5NF)

This means that if a relation R is in BCNF, it must automatically satisfy the conditions for 3NF, which in turn means it satisfies the conditions for 2NF and 1NF.

Analyzing Normal Forms and BCNF

Let's quickly define the relevant normal forms:

  • 1NF: A relation is in 1NF if all attribute values are atomic (indivisible) and there are no repeating groups of columns.
  • 2NF: A relation is in 2NF if it is in 1NF and all non-prime attributes (attributes not part of any candidate key) are fully functionally dependent on the entire candidate key. This addresses partial dependencies.
  • 3NF: A relation is in 3NF if it is in 2NF and there are no transitive dependencies for non-prime attributes. A transitive dependency exists if a non-prime attribute is dependent on another non-prime attribute, which is itself dependent on the key.
  • BCNF: A relation is in BCNF if for every non-trivial functional dependency ($\text{X} \rightarrow \text{Y}$), $\text{X}$ is a superkey (a set of attributes that uniquely identifies a tuple). This is stricter than 3NF because in 3NF, $\text{Y}$ being a prime attribute is also allowed even if $\text{X}$ is not a superkey. BCNF removes this exception.

Since BCNF is a higher normal form than 3NF, any relation that satisfies the requirements of BCNF automatically satisfies the requirements of 3NF. Similarly, if a relation is in 3NF, it must also be in 2NF (as 2NF is a prerequisite for 3NF). Therefore, a relation in BCNF is also in 3NF and 2NF (and 1NF).

Normal Form Hierarchy
Normal Form Requirement Implies
1NF Atomic values, no repeating groups -
2NF Is in 1NF + No partial dependencies 1NF
3NF Is in 2NF + No transitive dependencies (for non-prime attributes) 2NF, 1NF
BCNF Is in 3NF + For every dependency $\text{X} \rightarrow \text{Y}$, $\text{X}$ is a superkey 3NF, 2NF, 1NF
4NF Is in BCNF + No multi-valued dependencies BCNF, 3NF, 2NF, 1NF

Evaluating the Options

Let's evaluate each given option based on our understanding of BCNF and the normal form hierarchy:

  • Option 1: R is in 4NF

    A relation in BCNF is not necessarily in 4NF. 4NF deals with multi-valued dependencies, which BCNF does not explicitly address. There can be relations in BCNF that are not in 4NF.

  • Option 2: R is not in 1NF

    This is incorrect. 1NF is the most basic normal form. All higher normal forms, including BCNF, require the relation to be in 1NF as a foundational step.

  • Option 3: R is in 2NF and not in 3NF

    This is incorrect. BCNF is a stricter form of 3NF. If a relation is in BCNF, it must satisfy all the conditions for 3NF. If it satisfies 3NF, it must also satisfy 2NF.

  • Option 4: R is in 2NF and 3NF

    This is correct. As BCNF is a higher normal form than 3NF, any relation in BCNF must necessarily be in 3NF. Since 3NF requires being in 2NF, a relation in BCNF is also in 2NF.

Conclusion on BCNF Properties

In summary, BCNF is a relatively strong normal form. A key property is that any relation in BCNF inherently satisfies the requirements of all normal forms preceding it, specifically 3NF, 2NF, and 1NF.

Revision Table: BCNF and Normal Forms

Key Implications of BCNF
If R is in BCNF... Is R in this Normal Form? Reason
1NF Yes Prerequisite for all higher normal forms.
2NF Yes Prerequisite for 3NF, which is implied by BCNF.
3NF Yes BCNF is a stricter version of 3NF; meeting BCNF criteria implies meeting 3NF criteria.
4NF Not necessarily BCNF doesn't specifically address multi-valued dependencies handled by 4NF.

Additional Information on BCNF

While BCNF eliminates most anomalies, it's important to note that achieving BCNF might not always be dependency-preserving. Sometimes, decomposing a relation into BCNF might lose functional dependencies. In such cases, 3NF might be preferred if preserving all functional dependencies is critical. However, for most database designs aiming to reduce redundancy and anomalies significantly, BCNF is a highly desirable normal form. Understanding BCNF is crucial for database design principles.

Was this answer helpful?

Important Questions from Normal Form - Teaching

  1. Consider a schema R(A, B, C, D) and following functional dependencies.

    A → B

    B → C

    C → D

    D → B

    Then decomposition of R into R 1(A, B), R 2(B, C) and R 3(B, D) is _______

  2. If every non-key attribute is functionally dependent on the primary key, then the relation is in _______.

  3. Consider a relation R (A, B, C, D, E, F, G, H), where each attribute is atomic, and following functional dependencies exist.

    CH → G

    A → BC

    B → CFH

    E → A

    F → EG

    The relation R is ______.

  4. For a database relation R(a, b, c, d) where the domains of a, b, c, and d include only atomic values, and only the following functional dependencies and those that can be inferred from them hold:

    a → c

    b → d

    The relation is in.
  5. Match List I with List II:

    List IList II
    (A)BCNF(I)It removes multivalued dependency
    (B)3 NF(II)It is not always dependency preserving
    (C)2 NF(III)It removes transitive dependency
    (D)4 NF(IV)It removes partial functional dependency

    Choose the correct answer from the options given below:

Need Expert Advice?

Start Your Preparation with Prepp Mobile App

Download the app from Google Play & App Store
Download the app from Google Play & App Store
Prepp Mobile App