
Datamodellering
Hur man designar en databas från grunden med hjälp av ER-diagram och normalisering. Målet är att undvika redundans och bevara dataintegritet.
Kort sammanfattning:Datamodellering handlar om arkitekturen bakom informationen. Innan vi skriver en enda rad SQL måste vi förstå hur verklighetens objekt och deras relationer ska översättas till tabeller. Vi använder ER-diagram (Entity-Relationship) för att visualisera detta och normalisering för att säkerställa att vår databas är effektiv och fri från onödig redundans.
Om detta ämne
Datamodellering handlar om arkitekturen bakom informationen. Innan vi skriver en enda rad SQL måste vi förstå hur verklighetens objekt och deras relationer ska översättas till tabeller. Vi använder ER-diagram (Entity-Relationship) för att visualisera detta och normalisering för att säkerställa att vår databas är effektiv och fri från onödig redundans.
I gymnasiekursen fokuserar vi på att eleverna ska kunna gå från en kravspecifikation till en färdig datamodell. Vi diskuterar begrepp som ett-till-många och många-till-många-relationer. Att lära sig normalisera data handlar inte bara om teknik, utan om att förstå informationsstruktur och logisk integritet, vilket är en nyckelkompetens inom datalogi.
Detta ämne drar stor nytta av kollaborativa designprocesser där eleverna får kritisera och förbättra varandras modeller i en iterativ process.
Nyckelfrågor
- Vad är ett ER-diagram?
- Varför normaliserar man en databas?
- Hur hanteras relationer mellan tabeller?
Se upp för dessa missuppfattningar
Vanlig missuppfattningAtt man ska ha så få tabeller som möjligt.
Vad man ska lära ut istället
Förklara att många små, specialiserade tabeller ofta är bättre än en stor. Genom att visa hur svårt det är att ändra data i en 'allt-i-ett'-tabell förstår eleverna värdet av uppdelning.
Vanlig missuppfattningAtt normalisering bara är en teoretisk övning.
Vad man ska lära ut istället
Visa praktiska exempel på 'anomalier', som när man råkar radera en kund bara för att man raderar deras sista order. Diskussioner om dataintegritet gör teorin relevant.
Idéer för aktivt lärande
Se alla aktiviteter→Utforskande cirkel
Från kaos till ordning
Eleverna får en lång lista med ostrukturerad data (t.ex. ett kvitto med massor av information). De ska i grupper bryta ner informationen i logiska enheter och rita ett ER-diagram som visar hur tabellerna ska hänga ihop.
Lärande genom undervisning
Normaliserings-akuten
Varje grupp får en medvetet 'dåligt' designad databas med massor av dubbellagring. De ska identifiera problemen och förklara för en annan grupp hur de har normaliserat modellen för att rädda dataintegriteten.
EPA (Enskilt-Par-Alla)
Många-till-många-dilemmat
Eleverna får fundera på hur man kopplar ihop 'Studenter' och 'Kurser' (eftersom en student läser många kurser och en kurs har många studenter). De diskuterar i par behovet av en kopplingstabell och delar sin lösning.
Vanliga frågor
Vad är ett ER-diagram och varför behövs det?
Hur kan studentcentrerat lärande hjälpa vid datamodellering?
Hur många normalformer behöver eleverna kunna?
Vad är en kopplingstabell?
Mer i Databaser och informationshantering
Relationsdatabaser och SQL
Grunderna i relationsdatabaser och hur man ställer frågor med SQL. Eleverna lär sig skapa, läsa, uppdatera och radera data (CRUD).
8 methodologies
NoSQL och alternativa databaser
En översikt av icke-relationella databaser och när de är lämpliga att använda. Eleverna jämför dokumentdatabaser med traditionella SQL-databaser.
8 methodologies