Relational Database Fundamentals
Master SQL joins, normalisation, and query optimisation with guided exercises and real-world dataset scenarios.
7
sections
10
challenges
40 min
to complete
Relational Database Fundamentals is an interactive computing lab pitched at Level 4 — Undergraduate Year 1 (Level 4 on the UK framework). It is one worked example of what EngagedLab produces when a lecturer uploads their own computing teaching material: the platform classifies the content, structures it into a multi-section lab, and generates the retrieval-practice and challenge activities shown below.
Across 7 sections and 10 challenges (about 40 min of learner time), the lab moves beyond passive reading. Learners work through a schema design task and other domain tasks that ask them to apply, not just recall — reasoning that is tagged against Bloom’s taxonomy so the cognitive demand is visible. Each objective and quiz question is discipline-accurate and written to UK academic conventions.
The lab sets 3 explicit learning objectives — listed in full below — and every quiz question and challenge is aligned to them, so the assessment matches the intended outcome rather than drifting into trivia. The finished lab passes EngagedLab’s 32 quality gates and exports as an offline-capable SCORM 1.2/2004 or LTI 1.3 Advantage package, so progress and scores flow back to your VLE gradebook through AGS grade passback and cmi.suspend_data state persistence.
Learning objectives
Distinguish INNER, LEFT, and FULL OUTER joins and predict their result sets for a given pair of tables.
Normalise a table to third normal form (3NF), identifying and removing partial and transitive dependencies.
Read a query and identify where an index would reduce a full table scan.
Try a sample quiz
Pick an answer to see instant feedback — exactly as a learner would in the generated lab.
Q1. You need every customer, including those with no orders, alongside any orders they have placed. Which join do you use?
Q2. A table stores (OrderID, ProductID, ProductName). ProductName depends only on ProductID, not the full key. Which normal form does this violate?
Sample challenge
You are given a single spreadsheet-style table mixing students, the modules they take, and each module’s tutor. Decompose it into normalised tables to 3NF and state the primary and foreign keys.
Hint 1
Ask which facts repeat when a student takes several modules — repetition signals a table that should be split out.
Hint 2
Create Students, Modules, and an Enrolments junction table. Tutor belongs with Modules (a transitive dependency), and Enrolments carries the composite key (StudentID, ModuleID).
What every EngagedLab lab includes
Learning objectives
Outcome-aligned goals mapped to the qualification level.
Guided practice
Graduated hints that nudge, then scaffold — never hand over the answer.
Domain challenges
Subject-specific reasoning tasks, not generic multiple choice.
Knowledge-check quizzes
Spaced retrieval questions with instant feedback.
Case study
A multi-section scenario with stakeholder perspectives.
Reflection prompts
Metacognitive prompts that consolidate learning.
Curated reading list
4–6 further readings sorted by difficulty.
