Skip to content
Informatica · Klas 4 VWO

Ideeën voor actief leren

Relationele Databases en SQL

Actief leren werkt goed bij dit onderwerp omdat leerlingen door direct te ontwerpen en te coderen ervaren hoe relationele databases redundantie tegengaan en hoe SQL-query's verschillende tabellen verbinden. Door samen te werken zien leerlingen direct de gevolgen van hun ontwerpkeuzes en kunnen ze misvattingen actief corrigeren.

SLO Kerndoelen en EindtermenSLO: Voortgezet - DatabasesSLO: Voortgezet - Informatie-analyse
20–45 minDuo's → Hele klas4 activiteiten

Activiteit 01

Paarwerk: Database Ontwerp

Deel een casus uit, zoals een schoolrooster. Laten paren tabellen schetsen met primaire en vreemde sleutels, normaliseren tot 3NF. Wissel ontwerpen uit voor peer-review en bespreek redundantie.

Analyseer hoe je een database ontwerpt die redundantie en fouten voorkomt.

FacilitatietipTijdens de database-ontwerpoefening in paartjes: geef leerlingen concrete voorbeelden van redundantie, zoals een klant die meerdere keren in een spreadsheet staat, om het verschil met een relationele database te laten zien.

Waar je op moet lettenGeef leerlingen een klein scenario, bijvoorbeeld: 'Een school wil een database maken voor leerlingen en hun vakken. Welke twee tabellen zou je maken en wat zouden de primaire sleutels zijn? Schrijf dit op een kaartje.'

AnalyserenEvaluerenCreërenBesluitvormingZelfmanagementRelatievaardigheden
Volledige les genereren

Activiteit 02

Probleemgestuurd onderwijs45 min · Kleine groepjes

Small Groups: SQL Query Bouwen

Geef groepen een dataset met drie tabellen. Ze schrijven stapsgewijs een query met SELECT, WHERE en JOIN om specifieke data te extraheren. Testen in een online SQL-editor en vergelijken resultaten.

Verklaar waarom SQL na decennia nog steeds de standaard is voor relationele data-opslag.

FacilitatietipBij het bouwen van SQL-query's in kleine groepen: loop rond en vraag leerlingen om hardop te verklaren wat hun query doet, zodat je hun begrip direct kunt beoordelen.

Waar je op moet lettenToon een eenvoudige database met twee tabellen (bijvoorbeeld 'Klanten' en 'Bestellingen') op het digibord. Vraag leerlingen om een SQL-query te bedenken die alle bestellingen van een specifieke klant toont, inclusief de klantnaam. Laat een paar leerlingen hun query opschrijven.

AnalyserenEvaluerenCreërenBesluitvormingZelfmanagementRelatievaardigheden
Volledige les genereren

Activiteit 03

Probleemgestuurd onderwijs20 min · Hele klas

Whole Class: Query Challenge

Projecteer een complexe dataset. Laat de klas in koor query's bedenken en stemmen op de beste. Voer winnaar uit en bespreek optimalisaties.

Ontwerp een complexe SQL-query om specifieke informatie uit meerdere tabellen te extraheren.

FacilitatietipTijdens de hele klas Query Challenge: selecteer een paar leerlingen om hun query te presenteren en leg uit waarom bepaalde joins nodig zijn of waarom een query niet werkt.

Waar je op moet lettenLaat leerlingen in tweetallen een simpele database ontwerpen met minimaal drie tabellen en relaties. Vervolgens beoordelen ze elkaars ontwerp op basis van de normalisatieprincipes: is er redundantie vermeden? Zijn de sleutels correct gedefinieerd? Ze geven elkaar feedback op een gestructureerd formulier.

AnalyserenEvaluerenCreërenBesluitvormingZelfmanagementRelatievaardigheden
Volledige les genereren

Activiteit 04

Probleemgestuurd onderwijs25 min · Individueel

Individueel: Foutdebuggen

Geef buggy SQL-scripts. Leerlingen identificeren en corrigeren fouten, zoals verkeerde JOINs, en leggen uit waarom het nu werkt.

Analyseer hoe je een database ontwerpt die redundantie en fouten voorkomt.

FacilitatietipBij individueel foutdebuggen: geef leerlingen een lijst met veelvoorkomende foutmeldingen in SQL en laat ze deze stap voor stap oplossen, zodat ze patronen herkennen.

Waar je op moet lettenGeef leerlingen een klein scenario, bijvoorbeeld: 'Een school wil een database maken voor leerlingen en hun vakken. Welke twee tabellen zou je maken en wat zouden de primaire sleutels zijn? Schrijf dit op een kaartje.'

AnalyserenEvaluerenCreërenBesluitvormingZelfmanagementRelatievaardigheden
Volledige les genereren

Enkele opmerkingen over deze eenheid onderwijzen

Begin met een eenvoudig voorbeeld, zoals een schooladministratie met leerlingen en vakken, om de noodzaak van normalisatie te laten zien. Vermijd abstracte theorie over normalisatie; laat leerlingen ervaren hoe ontwerpkeuzes redundantie en inconsistenties veroorzaken. Gebruik vergelijkingen met spreadsheets om het verschil tussen een relationele database en een spreadsheet duidelijk te maken, maar benadruk direct de beperkingen van spreadsheets. Laat leerlingen zelf ontdekken dat JOINs nodig zijn om informatie uit meerdere tabellen te combineren.

Succesvolle leerlingen kunnen een eenvoudige database ontwerpen met minimaal drie genormaliseerde tabellen, inclusief primaire en vreemde sleutels. Ze schrijven correcte SQL-query's met SELECT, INSERT, UPDATE, DELETE en JOINs, en kunnen uitleggen waarom bepaalde ontwerpen beter zijn dan andere.


Pas op voor deze misvattingen

  • Tijdens de Database Ontwerpoefening in paartjes, watch for leerlingen die tabellen ontwerpen met alle data in één tabel, zoals een spreadsheet.

    Geef deze leerlingen direct een voorbeeld van redundantie in hun eigen ontwerp, zoals een leerling die meerdere keren in dezelfde tabel voorkomt, en vraag hen om de tabel te splitsen in een 'Leerlingen'- en 'Vakken'-tabel.

  • Tijdens de SQL Query Bouwen in kleine groepen, watch for leerlingen die denken dat SQL een programmeertaal is zoals Python.

    Laat deze leerlingen hun query hardop voorlezen alsof ze een wens doen, bijvoorbeeld 'Ik wil alle leerlingen die in 4VWO zitten', en benadruk dat SQL declaratief is en geen stappenplan beschrijft.

  • Tijdens de Whole Class Query Challenge, watch for leerlingen die aannemen dat elke tabel alle benodigde data bevat.

    Trek een voorbeeld uit de challenge en vraag: 'Waarom is het nodig om een join te maken tussen de 'Leerlingen'- en 'Vakken'-tabel?' en laat leerlingen zien hoe een query faalt als ze geen join gebruiken.


Methodes gebruikt in dit overzicht