Databaserecords vereenvoudigen
Een docent van de middelbare school hoorde geruchten over plannen om leerlinggegevens beter te organiseren. Hij wil de cijfers van zijn leerlingen per vak ordenen. De docent stelt de volgende tabelstructuur voor voor de tabel test_grades:
CREATE TABLE test_grades (
student_id INTEGER NOT NULL,
course_name VARCHAR(50) NOT NULL,
grades TEXT NOT NULL
);
Elk record staat voor een leerling uit een van de klassen van de docent, geïdentificeerd door het leerling-id, de cursusnaam en de toetscijfers van de leerling. De docent merkt dat het met deze structuur lastig is om de database te beheren. Nieuwe cijfers invoeren vereist een complexe query. Bovendien zijn berekeningen op de cijfers niet erg eenvoudig. In deze oefening help je om deze tabel naar 1st Normal Form (1NF) te brengen.
Deze oefening maakt deel uit van de cursus
PostgreSQL-databases maken
Oefeninstructies
- Definieer een nieuwe versie van de tabel met de naam
test_grade. - Neem de kolommen
student_idencourse_nameop zoals gedefinieerd in de tabeltest_grades. - Neem in plaats van een kolom
gradeseen numerieke kolom met de naamgradeop.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
-- Create the test_grade table
___ ___ ___ (
-- Include a column for the student id
___ ___ NOT NULL,
-- Include a column for the course name
___ ___ NOT NULL,
-- Add a column to capture a single test grade
___ ___ NOT NULL
);