Third Normal Form (3NF)

Context: FIT2094_MOC · 2NF with no transitive dependencies · no non-key attribute determines another non-key · the unit’s final normal form

Quick Revision

  • 🎯 Objective: 2NF with no transitive dependencies ➔ no non-key determines another non-key.
  • 📦 Core Components: remove transitive deps ➔ new relation + FK ➔ list all full dependencies.
  • ⚡ Key Constraint: the unit’s final normal form; each relation now a single subject.

📝 Core

1. The 3NF Condition

  • Definition2NF and no transitive dependencies.
  • No non-key → non-key ➔ the highest normal form in this unit.

2. 2NF → 3NF Steps

  • Remove transitive dependency ➔ into a new relation (non-key determinant → PK + dependents).
  • Leave FK ➔ the determinant stays as a foreign key.

3. Final Check

  • List all full dependencies ➔ confirm no partial/transitive slipped through.
  • Single subject ➔ each relation now models one subject.

⚙️ Core Implementation

🔹 PART → 3NF ()

When It Flips: the PART final set (PART, RESTOCK, VENDOR, CATEGORY) has 4 PKs and 3 FKs (PART.cat_code→CATEGORY, RESTOCK.part_no→PART, RESTOCK.vendor_no→VENDOR). Each relation now represents a single subject.

📊 Exam Execution Trace

Applied Exercise

Problem: How many PKs and FKs in the final PART 3NF set? Derivation Proof / Hand-Calculation Walkthrough:

Final Extracted Output: 4 PKs, 3 FKs.

🧠 Active Recall