SQL 3 - EK primaire sleutel, refererende sleutel, redundantie, ERD

SQL
1 / 31
suivant
Slide 1: Diapositive
InformaticaWOStudiejaar 4,5

Cette leçon contient 31 diapositives, avec quiz interactifs et diapositives de texte.

time-iconLa durée de la leçon est: 45 min

Éléments de cette leçon

SQL

Slide 1 - Diapositive

Cet élément n'a pas d'instructions

Welk SQL commando wordt gebruikt om een record toe te voegen?
A
UPDATE SET
B
INSERT INTO
C
SELECT FROM
D
DELETE FROM

Slide 2 - Quiz

Cet élément n'a pas d'instructions

Welk SQL commando wordt gebruikt om een record aan te passen?
A
SELECT * FROM table_name;
B
UPDATE table_name SET column1 = value1 WHERE condition;
C
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);
D
DELETE FROM table_name WHERE condition;

Slide 3 - Quiz

Cet élément n'a pas d'instructions

Wat is het juiste SQL commando om een record te wissen?
A
INSERT INTO tabelnaam VALUES (waarde)
B
SELECT * FROM tabelnaam
C
UPDATE tabelnaam SET kolomnaam = waarde
D
DELETE FROM tabelnaam WHERE voorwaarde

Slide 4 - Quiz

Cet élément n'a pas d'instructions

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);






CustomerID is een auto-increment veld

Slide 5 - Diapositive

Cet élément n'a pas d'instructions

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);






CustomerID is een auto-increment veld

Slide 6 - Diapositive

Cet élément n'a pas d'instructions

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;

Slide 7 - Diapositive

Cet élément n'a pas d'instructions

DELETE FROM table_name WHERE condition;

Slide 8 - Diapositive

Cet élément n'a pas d'instructions

Fundament
Introductie SQL

Fundament kerndomein C: Databases en SQL
Hoofdstuk 2.1 tmt 2.3
https://fundament-online.nl/leeromgeving/content.php?paragraaf_id=114878

Slide 9 - Diapositive

Cet élément n'a pas d'instructions

Leerdoelen
Na deze les kun je:
  • vertellen wat een primaire sleutel is;
  • de kenmerken opnoemen van een primaire sleutel;
  • uitleggen wat een vreemde of refererende sleutel is;
  • in je eigen woorden vertellen wat redundantie is;
  • aangeven waar ERD voor staat;
  • een ERD lezen en toepassen.

Slide 10 - Diapositive

Rode achtergrond betekent: klas is stil, dit zijn de leerdoelen en quizzes waarbij niet overlegd mag worden.

Doel van deze les is om het leren zichtbaar te maken voor zowel leerling als docent.
Eén of meerdere tabellen? 1/2
Een RDBMS heeft vaak meerdere tabellen

Waarom zijn meerdere tabellen efficiënter dan 1 tabel?

Slide 11 - Diapositive

Cet élément n'a pas d'instructions

Eén of meerdere tabellen? 1/2
Een RDBMS heeft vaak meerdere tabellen

Waarom zijn meerdere tabellen efficiënter dan 1 tabel?
  • minder/geen dubbele gegevens (redundantie)
  • sneller zoeken want minder rijen
  • beter en efficiënter beheer en onderhoud

Slide 12 - Diapositive

Cet élément n'a pas d'instructions

Eén of meerdere tabellen? 2/2
Meerdere tabellen leidt dus tot meer efficiëntie

Maar hoe koppel je die tabellen aan elkaar?

Dit koppelen gebeurt via sleutels

Slide 13 - Diapositive

Cet élément n'a pas d'instructions

Sleutels
Er zijn twee soorten sleutels:
  • primaire sleutels
      > maakt elke rij uniek
      >
    mag niet leeg zijn
  • vreemde of refererende sleutels
      > verwijst naar primaire sleutel ven een andere tabel
      > legt de relatie tussen de verschillende tabellen

Slide 14 - Diapositive

Cet élément n'a pas d'instructions

Primaire Sleutels
Een primaire sleutel in een tabel is dus uniek en moet ingevuld zijn (in Engels: primary key PK)

In de RDBMS van Magister is de primaire sleutel van de leerlingentabel bijvoorbeeld jouw leerlingnummer

Dat leerlingnummer is uniek voor jou bij het SMC

Slide 15 - Diapositive

Cet élément n'a pas d'instructions

Primaire Sleutels in een boekwinkel

Slide 16 - Diapositive

Cet élément n'a pas d'instructions

Vreemde Sleutels 0/3
Een vreemde (of refererende) sleutel in een tabel legt de relatie met een andere tabel (in Engels: foreign key FK)


Slide 17 - Diapositive

Cet élément n'a pas d'instructions

Vreemde Sleutels 1/3
Een vreemde (of refererende) sleutel in een tabel legt de relatie met een andere tabel (in Engels: foreign key)

In de RDBMS van Magister staat jouw huisadres niet in de leerlingentabel maar in een adrestabel
In de adrestabel staat als vreemde sleutel jouw leerlingnummer en daarmee is de relatie gelegd

Slide 18 - Diapositive

Cet élément n'a pas d'instructions

Primaire en vreemde sleutels in een boekwinkel

Slide 19 - Diapositive

Cet élément n'a pas d'instructions

Vreemde Sleutels 2/3
Schematisch de boekenwinkel database:



De sleutel auteurnr is de primaire sleutel in Auteurs
De kolom auteurnr is de vreemde sleutel in Boeken

Slide 20 - Diapositive

Cet élément n'a pas d'instructions

Vreemde Sleutels 3/3
Volgende les gaan we meerdere tabellen raadplegen, maar alvast voor je begrip, dat gebruikt de JOIN clausule:
SELECT auteurs.name AS auteurs_naam, boeken.titel AS boek_titel
FROM boeken
JOIN auteurs ON boeken.auteurnr = auteurs.auteurnr;

Slide 21 - Diapositive

Cet élément n'a pas d'instructions

Redundantie
Redundantie is het bestaan van dubbele gegevens:
dat zijn overtollige gegevens (dus gegevens die je teveel hebt, overtollig zijn)

Redundantie in dit geval is gevaarlijk, omdat je daarmee conflicten kan krijgen (bv. als 1 wordt aangepast en de ander niet, welke is dan correct?)

Slide 22 - Diapositive

Cet élément n'a pas d'instructions

ERD 1/3
ERD is de afkorting voor Entity Relationship Diagram
Hiermee laat je de verbanden tussen entiteiten zien
De entiteiten in een ERD zijn de verschillende tabellen

Slide 23 - Diapositive

Cet élément n'a pas d'instructions

ERD 2/3
Een ERD kan problemen zichtbaar maken doordat de relaties op een overzichtelijke manier worden weergegeven

Een ERD maken en up-to-date houden is dus belangrijk bij het opzetten en onderhouden van een RDBMS

Slide 24 - Diapositive

Cet élément n'a pas d'instructions

ERD 3/3
Er zijn verschillende manieren om een ERD te maken:
  • pen en papier
  • whiteboard
  • websites (Lucidchart.com, Draw.io)
  • software (Microsoft Visio, MySQL Workbench)

Slide 25 - Diapositive

Cet élément n'a pas d'instructions

ERD 3/3
Er zijn verschillende notaties in een ERD
Hiermee wordt de relatie aangegeven tussen sleutels

Slide 26 - Diapositive

Cet élément n'a pas d'instructions

Hoe zou je zoeken naar alle namen die beginnen met de letter 'A'?

WHERE name LIKE ...
A
'%A%'
B
'_A'
C
'A%'
D
'%A'

Slide 27 - Quiz

Cet élément n'a pas d'instructions

Welke van de volgende zoekopdrachten geeft alle resultaten die eindigen met 'son'?

WHERE name LIKE ...
A
'%son'
B
'_son'
C
'son%'
D
'%son%'

Slide 28 - Quiz

Cet élément n'a pas d'instructions

Opdracht # 1
  1. Kopieer de code
    rechts
  2. Sla het op als:
    index0_1.htm
  3. Open het bestand
    in je browser
  4. Wat gebeurt er? Zie je een JS functie?
timer
5:00

Slide 29 - Diapositive

Cet élément n'a pas d'instructions

Leerdoelen
Nu kun je:
  • vertellen wat een primaire sleutel is;
  • de kenmerken opnoemen van een primaire sleutel;
  • uitleggen wat een vreemde of refererende sleutel is;
  • in je eigen woorden vertellen wat redundantie is;
  • aangeven waar ERD voor staat;
  • een ERD lezen en toepassen.

Slide 30 - Diapositive

Rode achtergrond betekent: klas is stil, dit zijn de leerdoelen en quizzes waarbij niet overlegd mag worden.

Doel van deze les is om het leren zichtbaar te maken voor zowel leerling als docent.

Slide 31 - Diapositive

Cet élément n'a pas d'instructions