SQL 1 - introductie / SELECT, FROM, WHERE

SQL
1 / 24
volgende
Slide 1: Tekstslide
InformaticaWOStudiejaar 4,5

In deze les zitten 24 slides, met tekstslides.

time-iconLesduur is: 45 min

Onderdelen in deze les

SQL

Slide 1 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

Voorbeeld 1/2
Hier een voorbeeld van een tabel:





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

Slide 10 - Tekstslide

Deze slide heeft geen instructies

Voorbeeld 2/2


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

Slide 11 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

SELECT *
Je kunt meerdere kolommen terugkrijgen door:

* : alle kolommen

CustomerID, CustomerName : specifieke kolommen

Slide 14 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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

Slide 18 - Tekstslide

Deze slide heeft geen instructies

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

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

Slide 19 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

Deze slide heeft geen instructies

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 - Tekstslide

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 - Tekstslide

Deze slide heeft geen instructies