Photo AI
Last Updated Sep 27, 2025
Revision notes with simplified explanations to understand Data Normalisation quickly and effectively.
467+ students studying
Data Normalisation is a process used in relational databases to organise data efficiently, minimising redundancy and dependency by structuring data across multiple tables. The goal of normalisation is to reduce data duplication, ensure data integrity, and improve the database's efficiency in handling queries and updates. Normalisation typically progresses through stages known as "Normal Forms," with First Normal Form (1NF), Second Normal Form (2NF), and Third Normal Form (3NF) being the most commonly used.
Normalisation is a multi-step process that organises data into tables to reduce redundancy and improve data integrity. By following normalisation rules, we ensure that each table focuses on a single topic or entity, with well-defined relationships to other tables.
Criteria:
Example: Consider a table where a student's multiple phone numbers are stored in a single field: To satisfy 1NF, we split each phone number into a separate row:
| Student_ID | Name | Phone_Numbers |
|------------|------------|---------------------|
| 101 | Alice Smith| 123-456, 789-012 |
| Student_ID | Name | Phone_Number |
|------------|------------|--------------|
| 101 | Alice Smith| 123-456 |
| 101 | Alice Smith| 789-012 |
Criteria:
Example: If we have a table combining "Student" and "Course" details with a composite key (Student_ID and Course_ID), it may look like this: Here, "Name" only depends on "Student_ID," and "Course_Name" only depends on "Course_ID." To satisfy 2NF, we split it into two tables:
| Student_ID | Course_ID | Name | Course_Name |
|------------|-----------|------------|-------------|
| 101 | 201 | Alice Smith| Math |
**Students Table**
| Student_ID | Name |
|------------|------------|
| 101 | Alice Smith|
**Courses Table**
| Course_ID | Course_Name |
|-----------|-------------|
| 201 | Math |
Criteria:
Example: Consider a table where the "Course_Fee" is based on the "Course_Name": To achieve 3NF, move "Course_Fee" to a separate table, as it depends on "Course_Name":
| Course_ID | Course_Name | Course_Fee |
|-----------|-------------|------------|
| 201 | Math | 500 |
**Courses Table**
| Course_ID | Course_Name |
|-----------|-------------|
| 201 | Math |
**Fees Table**
| Course_Name | Course_Fee |
|-------------|------------|
| Math | 500 |
Consider the following table in Unnormalised Form (UNF):
| Student_ID | Name | Courses | Instructor |
|------------|------------|-----------------|----------------|
| 101 | Alice Smith| Math, Biology | Dr. Brown, Dr. Lee |
To achieve 1NF, split the repeating groups into separate rows:
| Student_ID | Name | Course | Instructor |
|------------|------------|-----------|------------|
| 101 | Alice Smith| Math | Dr. Brown |
| 101 | Alice Smith| Biology | Dr. Lee |
To achieve 2NF, identify partial dependencies and create separate tables. Here, "Instructor" depends on "Course," not on "Student_ID":
**Students Table**
| Student_ID | Name |
|------------|------------|
| 101 | Alice Smith|
**Courses Table**
| Course | Instructor |
|------------|------------|
| Math | Dr. Brown |
| Biology | Dr. Lee |
To achieve 3NF, ensure no transitive dependencies. If "Instructor" details need a separate table, we could further normalise:
**Instructors Table**
| Instructor | Course |
|------------|------------|
| Dr. Brown | Math |
| Dr. Lee | Biology |
Enhance your understanding with flashcards, quizzes, and exams—designed to help you grasp key concepts, reinforce learning, and master any topic with confidence!
70 flashcards
Flashcards on Data Normalisation
Revise key concepts with interactive flashcards.
Try Computer Science Flashcards7 quizzes
Quizzes on Data Normalisation
Test your knowledge with fun and engaging quizzes.
Try Computer Science Quizzes29 questions
Exam questions on Data Normalisation
Boost your confidence with real exam questions.
Try Computer Science Questions27 exams created
Exam Builder on Data Normalisation
Create custom exams across topics for better practice!
Try Computer Science exam builder12 papers
Past Papers on Data Normalisation
Practice past papers to reinforce exam experience.
Try Computer Science Past PapersDiscover More Revision Notes Related to Data Normalisation to Deepen Your Understanding and Improve Your Mastery
96%
114 rated
Databases
Capturing, Selecting, Managing & Exchanging Data
370+ studying
184KViewsJoin 500,000+ A-Level students using SimpleStudy...
Join Thousands of A-Level Students Using SimpleStudy to Learn Smarter, Stay Organized, and Boost Their Grades with Confidence!
Report Improved Results
Recommend to friends
Students Supported
Questions answered