SQL 1 - introductie / SELECT, FROM, WHERE

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

Cette leçon contient 24 diapositives, avec 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

Wat gaan we doen? 1/3
Het v6 PTA bestaat uit 3 PO's

Het eerste PO staat vast, de andere twee (nog) niet

Het PTA staat/komt op het leerlingenportaal op de website

Slide 2 - Diapositive

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

Wat gaan we doen? 2/3
Het eerste PO staat vast: we gaan een Web App bouwen!




Daarvoor gebruiken we het geleerde van HTML, CSS en daarnaast kennis over databases, SQL en PHP

Slide 3 - Diapositive

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

Wat gaan we doen? 3/3
De eerste paar maanden gaan we dus eerst SQL, databases en PHP behandelen

Met SQL kan een database worden gelezen en bewerkt, door middel van bepaalde instructies
PHP is een programmeertaal die op de webserver draait waarmee o.a. SQL opdrachten kunnen worden uitgevoerd

Slide 4 - Diapositive

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

Fundament
introductie SQL

Fundament kerndomein C: Databases en SQL
Hoofdstuk 1.1 tmt 1.5
https://fundament-online.nl/leeromgeving/content.php?id=49089

Slide 5 - Diapositive

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

Leerdoelen
Na deze les kun je:
  • in je eigen woorden uitleggen wat SQL is;
  • een simpele SQL statement opstellen;
  • uitleggen wat SELECT, FROM en WHERE doen;
  • vergelijkingsoperatoren omschrijven;
  • BOOLEAANSE operatoren in WHERE gebruiken.

Slide 6 - 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.
Bouwen app
Voor onze web applicatie moeten we kennis hebben over de volgende 3 onderwerpen:

  • database (weet je nog? RDBMS?)
  • SQL-taal (om de database te benaderen en bewerken)
  • PHP-taal (voor de website en de database)

Slide 7 - Diapositive

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

Wat is SQL?
SQL is de afkorting voor Structured Query Language
SQL is een programmeertaal, waarmee je gegevens in een database kunt opslaan, ophalen, bewerken of manipuleren

Functies in SQL noemen we functies of expressies
Een commando in SQL wordt een statement genoemd

Slide 8 - Diapositive

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

Belangrijke termen
SQL commando's zijn niet hoofdlettergevoelig!

Belangrijke termen voor SQL zijn:
  • RDBMS (relationele database management systeem)
  • table (tabel in je database)
  • record / row (een rij in je database)
  • field / column (een kolom in je database)

Slide 9 - Diapositive

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

Voorbeeld 1/2
Hier een voorbeeld van een tabel:





(let wel: een RDBMS kan meerdere tabellen hebben!)

Slide 10 - Diapositive

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

Voorbeeld 2/2


columns / fields
CustomerID, CustomerName, ContactName, etc
records / rows
1,Alfreds Futterkiste, Maria Anders, (etc)
2,Ana Tru... (etc)

Slide 11 - Diapositive

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

Syntax SQL statement 1/2
Een statement bestaat uit commando's of keywords (sleutelwoorden), gebruikelijk in hoofdletters

SELECT * FROM Customers;

Met ; wordt het einde van de statement aangegeven (maar in sommige SQL-database-engines is het optioneel)

Slide 12 - Diapositive

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

Syntax SQL statement 2/2

SELECT CustomerName FROM Customers ;
  • SELECT geeft aan welke data je wil hebben
  • FROM geeft aan uit welke tabel je de data wil halen
  • ; geeft het einde van de statement aan

Slide 13 - Diapositive

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

SELECT *
Je kunt meerdere kolommen terugkrijgen door:

* : alle kolommen

CustomerID, CustomerName : specifieke kolommen

Slide 14 - Diapositive

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

WHERE 1/3
Als je alleen bepaalde regels terug wil, dan kun je gebruikmaken van de WHERE voorwaarde (clause):

SELECT * FROM Customers WHERE Country="Mexico";

Slide 15 - Diapositive

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

WHERE 2/3
SELECT * FROM Customers WHERE Country="Mexico";

met " " of ' ' geven we een string aan, als we willen filteren op een cijfer, dan laten we die achterwege:
SELECT * FROM Customers WHERE CustomerID=1;
ook kan:
SELECT * FROM Customers WHERE CustomerID > 2;

Slide 16 - Diapositive

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

WHERE 3/3
Een query kan ook op meerdere regels worden gezet:

SELECT * FROM Customers WHERE Country="Mexico";
   is hetzelfde als:
SELECT * 
FROM Customers 
WHERE Country="Mexico";

Slide 17 - Diapositive

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

WHERE: Operators
Er zijn verschillende operators binnen een WHERE voorwaarde mogelijk:

Slide 18 - Diapositive

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

WHERE: combineren
Met Booleaanse operatoren kunnen we WHERE voorwaarden combineren:
  • AND
  • OR
  • NOT

SELECT * FROM Cust WHERE CustID>1 NOT CustID=10;

Slide 19 - Diapositive

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

SQL: oefenen in w3schools
https://www.w3schools.com/sql/trysql.asp?filename=trysql_asc
  • alleen CustomerID en CustomerName:
  • alleen de regel van
     "Blondel père et fils":


  • Country is Brazil en de eerste letter
     van de ContactName is een "A"
timer
5:00

Slide 20 - Diapositive

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 21 - Diapositive

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

SQL: injection
Zoek uit:
  1. hoe belangrijk is een database voor een website/app?
  2. wat is "SQL-injection"?
  3. waarom is het verstandig om dit te weten bij het bouwen van een webapp?
Je mag overal zoeken en vragen aan AI, maar je moet het wel verifiëren!
timer
5:00

Slide 22 - Diapositive

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

Leerdoelen
Nu kun je:
  • in je eigen woorden uitleggen wat SQL is;
  • een simpele SQL statement opstellen;
  • uitleggen wat SELECT, FROM en WHERE doen;
  • vergelijkingsoperatoren omschrijven;
  • BOOLEAANSE operatoren in WHERE gebruiken.

Slide 23 - 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 24 - Diapositive

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