Databases (AQA GCSE Computer Science): Revision Notes
Databases
What is a database?
A database is like a digital filing cabinet that stores information in an organised way. Think of it as a persistent store of organised data. Let's break this down:
Understanding the key characteristics of databases:
- Persistent means the data stays there until someone specifically deletes it - it doesn't disappear when you turn off the computer
- Organized means the information is structured in a logical way that makes it easy to find and use
- The database is structured into different components like records, fields, and tables
Database organisation - records and fields
Databases organise information using a simple but powerful system that relies on two fundamental components:
A record is like a complete entry about one item or person. For example, all the information about one student would be stored in a single record.
A field is like a category of information within that record. Each field has a specific name and stores one type of data.
Example: Student Database Structure
For a student record, the fields might include:
- StudentID
- FirstName
- Surname

In this example table, each row represents one record (one student), and each column represents a field (a type of information about that student).
Primary keys
Every database table needs a primary key - this is a special field that uniquely identifies each record. Think of it like a student ID number at school - no two students can have the same ID number.
Why Primary Keys Matter
In our student table, the StudentID field serves as the primary key because:
- Each student has a unique ID number
- No other student can have the same StudentID
- This helps us tell students apart even if they have the same name
Problems with single tables
When we try to store all information in one big table, we run into serious problems that make databases inefficient and unreliable:

Data redundancy
Data redundancy happens when the same information is repeated multiple times in a database. Looking at the expanded table above, you can see that information like "Mr Craddock teaches 9A" and "10B students go to the Library" gets repeated for every student in those classes.
Problems Caused by Data Redundancy
This creates significant issues because:
- The database file becomes much larger than necessary
- More storage space is wasted
- It becomes harder to maintain and update information
Data inconsistency
Data inconsistency occurs when the same piece of information appears differently in different places. For example, if Mr Craddock's class was sometimes recorded as being in "Room 7" and sometimes in "Room 8", we wouldn't know which was correct.
Consequences of Data Inconsistency
This leads to:
- Confusion about what the real information is
- Errors when trying to retrieve data
- Unreliable database information
Solution: relational databases
A relational database solves these problems by splitting information across multiple connected tables instead of storing everything in one big table.
Using our student example, we can split the information into separate tables:

The relational database approach provides significant advantages:
- Eliminates data redundancy by storing each piece of information only once
- Prevents data inconsistency by having a single source of truth for each fact
- Makes the database more efficient and reliable
- Allows for better organisation of complex information
Instead of repeating teacher and room information for every student, we store student information in one table and can link it to separate tables containing class and teacher information.
Key Points to Remember:
- A database is a persistent, organised store of data that doesn't disappear when the computer is turned off
- Records are complete entries (like one student's information) and fields are categories of information within records
- A primary key uniquely identifies each record - like a student ID number
- Data redundancy (repeating information) and data inconsistency (conflicting information) are major problems with single-table databases
- Relational databases solve these problems by splitting information across multiple connected tables