SQL is een querytaal is een soort programmeertaaltje waarmee je vragen kan stellen aan de database. De afkorting SQL staat voor Structured Query Language. Wat kun je nou met SQL?
Zie de volgende opsomming:
Met SQL kun je gegevens opvragen van een database
Met SQL kun je gegevens toevoegen aan een database
Met SQL kun je gegevens wijzigen in een database
Met SQL kun je gegevens verwijderen uit een database
Met SQL kun je nieuwe databases aanmaken;
Met SQL kun je tabellen aanmaken en aan een database toevoegen;
en nog veel meer ..
Een voorbeeld van een eenvoudige query zou kunnen zijn: Geef mij een lijst van alle mannelijke leden die in team B zitten. De bijbehorende query zou er als volgt uit kunnen zien:
In deze cursus wordt de basis van de taal SQL stap voor stap uitgelegd. Je zult ook opdrachten moeten maken. Deze opdrachten kun je uitvoeren binnen repl.it.
Het is belangrijk dat je goed oefend met de opgaven, op de toets krijg je alleen maar van dit type vragen.
We leven in een informatiemaatschappij. Dat betekent dat informatie een steeds belangrijkere rol neemt in de maatschappij. Het creëren, verspreiden en manipuleren van gegevens is een uiterst belangrijke hedendaagse activiteit. Informatie wordt gegenereerd door smartphones, computers, sensoren, de kassa van een supermarkt, de docent die jouw cijfers invoert en nog veel en veel meer. Met de komst van het Internet is de hoeveelheid gegevens grandioos gestegen. Kijk maar eens op de volgende site waar je wat live statistieken van het internet kan zien: http://www.internetlivestats.com
Mensen vragen zich wel eens af hoe groot het internet is. Via een snelle zoektocht op Google blijkt dat de vier grote bedrijven Microsoft, Google, Amazon en Facebook gezamenlijk ongeveer 1200 petabytes aan data bewaren. Dat alleen al is zo onvoorstelbaar veel. 1 petabyte is namelijk 13.3 jaar lang HD-TV video! Je kunt alle geschreven teksten in de menselijke geschiedenis opslaan in 20 petabytes! Zie ook het plaatje hieronder:
Maar hoe sla je die gegevens op? En hoe je zorg je ervoor dat je eenvoudig en doelgericht naar specifieke gegevens kan zoeken? Dit is een vaardigheid die met de dag belangrijker wordt.
Informatie kan digitaal opgeslagen worden op verschillende manieren. Een van die manieren is door gebruik te maken van een relationele database.
Een relationele database bestaat uit tabellen die onderling aan elkaar gerelateerd zijn. Hieronder vind je een diagram waarin drie tabellen zijn afgebeeld. Het gaat om LEDEN, TEAMS en WEDSTRIJDEN:
De tabel LEDEN bestaat uit zichzelf weer uit de kolommen lidnr, voornaam, tussenv, achternaam et cetera. De pijltjes die van de ene tabel naar de andere tabel wijzen, geven aan dat er een relatie is tussen de verschillende tabellen. Zo geeft het pijltje dat van aanvoerder naar lidnr wijst aan dat “een aanvoerder van een team, een bestaand lid moet zijn in de leden tabel”.
Het diagram wordt ook een strokendiagram genoemd. Het bevat nog meer informatie. De tabel bestaat uit een aantal regels. Je wilt in een tabel geen dubbele regels hebben. Bij de velden lidnr en teamnr staat een pijl. Die geven aan dat de regels uniek zijn om deze criteria. Zo zie je in de tabel ‘WEDSTRIJDEN’ dat de pijl over twee velden gaat ‘teamnr’ en ‘datum’; de combinatie van deze twee maakt een unieke regel.
De pijlen tussen de tabellen geeft ook informatie: Een team kan meerdere wedstrijden spelen, maar elke wedstrijd hoort maar bij één team. Zo zie je ook dat een team uit meerdere leden bestaat (logisch), maar dat een lid maar bij één team hoort. De aanvoerder van elk team is een lid, maar een lid kan meerdere keren aanvoerder (bij verschillende teams) zijn.
Dit houdt dan ook in dat een aanvoerder niet hoeft te spelen.
Er is een mooie database die wij kunnen gebruiken voor om oefening mee te gaan maken. Ook wordt deze database gebruikt om de toets die jij gaat krijgen over dit onderwerp.
De betreffende database is te bekijken op gihub.
Hieronder het datamodel van de database, deze ga je nog veel gebruiken. Je hoeft er nu nog niet echt naar te kijken.
Dit is een database die veel wordt gebruikt voor cursusen. Ik heb voor ons deze database al even op repl.it gezet. Als je inlogd met je account kun je mijn versie dupliseren en zo heb je een 'eigen' versie van de database.
Log in op repl.it met je eigen account.
Ga naar de volgende repl.it: repl.it
3. Druk op de Fork knop 4. Druk op de Run knop
5. Voer het volgende sql commando even uit om de testen of het werk:
6. Als de output hierop - lijkt werkt het!
Test deze 2 commando's even die zijn super handig!
Dan krijg je de velden in de Tabel.
Dan krijg je een overzicht van alle tabellen die in de database zijn.