Interview Q&A / SQL & DBMS

AdvancedQuick answer1 min readUpdated 3 Oct 2026

What is BCNF and how is it stricter than 3NF?

SHORT ANSWER

A table is in BCNF if, for every non-trivial dependency X -> Y, X is a superkey. 3NF also lets Y be a prime attribute, which BCNF does not allow, so BCNF removes a few anomalies that 3NF misses.

Explain it simply

3NF says every non-key column depends on the key, the whole key and nothing but the key. BCNF says even key columns may only be determined by a key. The gap appears when a table has overlapping candidate keys.

Example

A college assigns each teacher to one subject, but a subject can have several teachers. A student takes a subject with one teacher.

Table enrol(student, subject, teacher) with rules:

  • (student, subject) -> teacher
  • teacher -> subject

Candidate keys: (student, subject) and (student, teacher). The dependency teacher -> subject has the right side subject, which is part of a key (a prime attribute), so the table is in 3NF. But teacher is not a superkey, so it violates BCNF.

The problem: if Mr. Sen changes his subject, every row for Mr. Sen must change.

BCNF decomposition:

  • teaches(teacher, subject) with key teacher
  • enrol(student, teacher)

The cost: the rule (student, subject) -> teacher can no longer be enforced by a key alone, so BCNF may lose a dependency.

What to say in the interview

"BCNF requires the left side of every non-trivial dependency to be a superkey. It differs from 3NF only when candidate keys overlap. BCNF may not preserve all dependencies, which is why 3NF is often the practical target."

Common mistakes

  • Claiming every 3NF table is in BCNF. The reverse is true: BCNF implies 3NF.

#dbms#normalization#bcnf#3nf

Related questions

Practise more SQL & DBMS questions

Test your recall with short answers, then return to the detailed explanations when you need context.

Open SQL & DBMS quick answers →

Get new questions like this by email

One short email when something new and useful lands. No spam, unsubscribe in one tap.

By subscribing you agree to the Privacy Policy.