A3.1.1

Explain the features, benefits and limitations of a relational database

A relational database stores data in tables . Each table is made up of: records (row = record = tuple = instance) each row stores one complete item fields…

3 min read621 words
  • A relational database stores data in tables.
  • Each table is made up of:
    • records (row = record = tuple = instance)
      • each row stores one complete item
    • fields (column = attribute = field = feature)
      • each column stores one attribute of that item
  • Example:
StudentIDNameClass
101Alice11A
102Ben11B

Main features of a relational database

  • Table-based structure
    • data is organized into tables
    • each table represents one entity, such as Students, Teachers, or Orders
  • Primary key
    • a field that uniquely identifies each record in a table
    • example:
      • StudentID
  • Foreign key
    • a field in one table that links to the primary key in another table
    • this creates a relationship between tables
  • Relationships
    • tables can be linked together
    • common relationships (cardinality):
      • one-to-one
      • one-to-many
      • many-to-many
  • Structured query language (SQL)
    • used to create, search, update, and delete data
    • example operations:
      • SELECT
      • INSERT
      • UPDATE
      • DELETE
  • Data integrity
    • validation rules and relationships help keep data accurate and consistent
    • example:
      • you cannot assign an order to a customer that does not exist if referential integrity is enforced
      • Referential integrity ensures that every foreign key value matches an existing primary key value in the related table.
  • Reduced redundancy through normalization
    • data is split into related tables to avoid unnecessary duplication
    • this improves consistency

Benefits of a relational database

  • Reduced duplication
    • the same data does not need to be repeated in multiple places
    • this saves storage and reduces inconsistency
  • Improved consistency
    • if one value changes, it can be updated once in one table instead of many times
  • Better data integrity
    • keys, validation, and constraints help prevent invalid data
  • Efficient querying
    • SQL makes it easy to search, sort, filter, and combine data from multiple tables
  • Scalability for structured data
    • relational databases work well when data is clearly structured and relationships are important
  • Security and access control
    • users can be given different permissions for viewing or editing data
  • Multi-user access
    • many users can work with the database at the same time
    • transaction control helps maintain correctness

Limitations of a relational database

  • Complex design
    • building a good relational database requires careful planning
    • tables, keys, and relationships must be designed properly
  • Less suitable for unstructured data
    • relational databases are best for structured data
    • they are less suitable for documents, media-heavy data, or highly variable data structures
  • Can become complex with many relationships
    • large systems may need many linked tables
    • complex joins can be harder to understand and maintain
  • Performance overhead
    • highly complex queries across many tables may be slower
  • Schema changes can be disruptive
    • changing table structures after deployment can be difficult
  • Many-to-many relationships require extra tables
    • an additional linking table is usually needed
    • this increases design complexity

Simple example of a relationship

  • Students table
StudentIDName
101Alice
102Ben
  • Classes table
ClassIDClassName
C1Biology
C2Chemistry
  • Enrollments table
StudentIDClassID
101C1
101C2
102C1
  • Here:
    • StudentID and ClassID in Enrollments are foreign keys
    • Enrollments resolves a many-to-many relationship

Quick comparison

AspectStrength of relational databaseLimitation of relational database
Structureclear table structurerigid schema
Consistencystrong integrity and reduced redundancymore planning required
Queryingpowerful SQL queriesjoins can become complex
Data typeexcellent for structured dataweaker for unstructured or flexible data
Designlogical and organizedmore difficult to design well at the start

Start typing to search all published objectives.