Track progress, take quizzes and save notes on this lesson.

Free forever · no card needed

Start free
Advanced

Database Normalisation

4.10.3 Database design and normalisation

Aligned to the AQA 7517 specification

Level
Advanced
Reading time
5 min
Published
13 June 2026
Updated
1 July 2026
On this page
  1. 1.Why Normalise?
  2. 2.First Normal Form (1NF)
  3. 3.Second Normal Form (2NF)
  4. 4.Third Normal Form (3NF)
  5. 5.Normalisation: Step-by-Step Summary
  6. 6.Common Exam Mistakes

Key takeaways

  • Normalisation organises a database to eliminate redundancy and improve integrity by ensuring each fact is stored in exactly one place, resolving update, insertion, and deletion anomalies.
  • A table is in 1NF if each cell holds a single atomic value with no repeating groups, each column holds one type, and each row is unique via a primary key.
  • A table is in 2NF if it is in 1NF and every non-key attribute depends on the whole primary key, with no partial dependency on only part of a composite key.
  • A table is in 3NF if it is in 2NF and no non-key attribute depends on another non-key attribute, removing transitive dependencies of the form key → non-key → non-key.
  • Partial dependencies only exist with a composite primary key, so a table with a single-column primary key is automatically in 2NF.

Why Normalise?

Normalisation is the process of organising a database to eliminate redundancy (data stored more than once) and improve integrity (data stays consistent).

Problems caused by un-normalised data:

AnomalyWhat goes wrong
Update anomalyThe same data is stored in multiple rows; updating one but not the others causes inconsistency
Insertion anomalyCannot add data without also providing unrelated data (e.g. can't add a course unless at least one student is enrolled)
Deletion anomalyDeleting one record accidentally deletes other useful data (e.g. deleting the last student in a course also deletes the course itself)

Normalisation solves all three by ensuring each fact is stored in exactly one place.

First Normal Form (1NF)

A table is in 1NF if:

  1. Each cell contains a single (atomic) value — no repeating groups or multi-valued cells
  2. Each column contains values of the same type
  3. Each row is unique (there is a primary key)

Un-normalised table:

OrderIDCustomerProducts
1AlicePen, Notebook
2BobRuler

Products contains multiple values — violates 1NF.

1NF version:

OrderIDCustomerProduct
1AlicePen
1AliceNotebook
2BobRuler

Each cell now contains one value. The primary key is now (OrderID, Product) — a composite key.

Second Normal Form (2NF)

A table is in 2NF if:

  1. It is in 1NF, and
  2. Every non-key attribute depends on the whole primary key — no partial dependencies

Partial dependency occurs when a non-key attribute depends on only part of a composite primary key.

1NF table (from above) — checking for partial dependencies:

OrderIDProductCustomerProductPrice
1PenAlice£0.50
1NotebookAlice£2.00
2RulerBob£1.50
  • Customer depends only on OrderID (not on Product) — partial dependency
  • ProductPrice depends only on Product (not on OrderID) — partial dependency

2NF: remove partial dependencies into separate tables:

Order(<u>OrderID</u>, Customer)
Product(<u>Product</u>, ProductPrice)
OrderLine(<u>OrderID*</u>, <u>Product*</u>)

Each non-key attribute now depends on the whole primary key of its table.

Third Normal Form (3NF)

A table is in 3NF if:

  1. It is in 2NF, and
  2. No non-key attribute depends on another non-key attribute — no transitive dependencies

Transitive dependency: A → B → C, where A is the primary key, B and C are non-key attributes, and C depends on B rather than directly on A.

Example — 2NF table with transitive dependency:

EmployeeIDDeptCodeDeptNameSalary
101ITIT Department£40000
102HRHR Department£35000
103ITIT Department£42000
  • DeptName depends on DeptCode (non-key), not directly on EmployeeIDtransitive dependency

3NF: remove transitive dependencies:

Employee(<u>EmployeeID</u>, DeptCode*, Salary)
Department(<u>DeptCode</u>, DeptName)

Now DeptName is stored once in Department. Changing a department's name requires updating one row.

Want more lessons like this one?

Generate lessons on anything you study. Free account, no card needed.

Start generating

Normalisation: Step-by-Step Summary

Normal FormRequirementResolves
1NFAtomic values; unique rows; primary keyRepeating groups and multi-valued cells
2NF1NF + no partial dependenciesNon-key attributes depending on part of composite key
3NF2NF + no transitive dependenciesNon-key attributes depending on other non-key attributes

The process:

  1. Start with the un-normalised data
  2. Apply 1NF: split out multi-valued cells; identify primary key
  3. Apply 2NF: identify partial dependencies; move them to new tables
  4. Apply 3NF: identify transitive dependencies; move them to new tables

Common Exam Mistakes

1. Skipping 2NF for tables with a single-column primary key

Partial dependencies only exist when there is a composite primary key. A table with a single-column primary key is automatically in 2NF (you cannot have a partial dependency on a single column). The 2NF step matters only when there is a composite key.

2. Confusing partial and transitive dependencies

Partial dependency (2NF issue): non-key attribute depends on part of the composite primary key. Transitive dependency (3NF issue): non-key attribute depends on another non-key attribute. Draw the dependency chain: if the chain goes key → non-key → non-key, it is transitive.

3. Applying normalisation without identifying the primary key first

You cannot check for 2NF or 3NF without knowing the primary key. The first step in normalisation is always to identify the key. All subsequent dependency analysis is relative to the key.

4. Forgetting that normalisation creates more tables

Normalising a table produces more, smaller tables. Queries on a normalised database require JOINs. This is a deliberate trade-off: more tables, less redundancy, better integrity. Denormalisation (deliberately introducing some redundancy) is sometimes done for performance — but that is beyond the AQA spec.

Key terms

Normalisation
The process of organising a database to eliminate redundancy and improve integrity by storing each fact in exactly one place.
Update anomaly
An error where the same data is stored in multiple rows and updating one but not the others causes inconsistency.
Insertion anomaly
An error where data cannot be added without also providing unrelated data, such as not being able to add a course unless a student is enrolled.
Deletion anomaly
An error where deleting one record accidentally deletes other useful data, such as deleting the last student in a course also deleting the course.
First Normal Form (1NF)
A table where each cell holds a single atomic value with no repeating groups, each column holds one type, and each row is unique via a primary key.
Second Normal Form (2NF)
A table that is in 1NF and in which every non-key attribute depends on the whole primary key, with no partial dependencies.
Third Normal Form (3NF)
A table that is in 2NF and in which no non-key attribute depends on another non-key attribute, with no transitive dependencies.
Partial dependency
Where a non-key attribute depends on only part of a composite primary key; a 2NF issue.
Transitive dependency
Where a non-key attribute depends on another non-key attribute (key → non-key → non-key) rather than directly on the key; a 3NF issue.
Composite key
A primary key made up of two or more attributes together, such as (OrderID, Product).

Frequently asked questions

A partial dependency is a 2NF issue where a non-key attribute depends on only part of a composite primary key. A transitive dependency is a 3NF issue where a non-key attribute depends on another non-key attribute, i.e. the chain goes key → non-key → non-key. Drawing the dependency chain shows which one applies.

Normalisation eliminates redundancy (data stored more than once) and improves integrity (data staying consistent) by ensuring each fact is stored in exactly one place. This resolves update anomalies, insertion anomalies, and deletion anomalies caused by un-normalised data.

Yes. Partial dependencies only exist when there is a composite primary key, because you cannot have a partial dependency on a single column. The 2NF step therefore matters only when the table has a composite key.

Generate revision on any topic you study

Type any topic you're studying and Aicademy generates a complete lesson, quiz, and flashcard set, personalised to your level.

Lessons on anything

Structured, level-matched lessons on any topic you study

Practice quizzes

Find out what you actually know before the exam does

Flashcard sets

Lock in key concepts with instant revision cards

Ask Aica

Stuck on something? Get a clear explanation, any time

Prev

Entity-Relationship Modelling and Relational Databases

Next

SQL and Client-Server Databases

Related lessons

Top students don’t revise more. They revise what counts.

Start revising free

Free to start. No card needed.