Vorige week: Referentiele integriteit “.. .Een concrete waarde van een verwijssleutel in een tabel moet altijd verwijzen naar een bestaande waarde van een sleutel in een andere tabel … Anders krijg je zogenaamde weeskinderen, records met waarden, die niet meer achterhaald kunnen worden ….” Dit afdwingen van de referentiele integriteit is één van de belangrijkste functies van een RDBMS
Vandaag, toch wat nieuws … HAVING CRUD-queries Verschillende soorten relaties En veel , heel veel oefenen … Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
Rule nr 1: SELECT categorie, count(*) as aantal FROM product GROUP BY categorie Categorie aantal boek 5 voedsel 3 vervoer 3
Selectie op groepsniveau SELECT categorie, count(*) as aantal FROM product GROUP BY categorie HAVING count(*) >4 Categorie aantal boek 5
Dus, … SELECT = CRUD SELECT … FROM …. WHERE … GROUP BY … HAVING … ORDER BY
Nu de Andere CRUD CREATE een nieuw record INSERT … READ lezen, opvragen SELECT … UPDATE veranderen bestaand UPDATE … DELETE verwijderen record DELETE …
INSERT Voeg een klant toe aan de tabel ‘klant’ INSERT INTO klant ( voornaam, achternaam ) VALUES ( 'piet' , 'jansen') INSERT INTO tabel ( kolomX, kolomY, kolomZ ) VALUES ( waardeX, waardeY, waardeZ ) NB autonumber kolommen worden automatisch ingevuld bijvoordbeeld ID velden
UPDATE Wijzig de voornaam van klant 1 UPDATE klant SET voornaam = ‘Gijs' WHERE ID = 1 UPDATE tabel SET kolomX = waardeX, SET kolomY = waardeY, SET kolomZ = waardeZ, WHERE criterium
DELETE Verwijder klant 1 DELETE * FROM klant WHERE ID = 1 FROM tabel WHERE criterium
Veelgestelde vragen INSERT INTO tabel ( kolomX, kolomY ) VALUES ( waardeX, waardeY ) UPDATE tabel SET kolomX = waardeX, SET kolomY = waardeY, WHERE criterium DELETE * FROM tabel
Verschillende soorten relaties naar kardinaliteit One-to-many klant doet verschillende bestellingen verwijssleutel moet in bestellingen Many-to-many bestelling bevat verschillende producten koppeltabel One-to-one bestelling wordt in één keer betaald verwijssleutel in of bestelling of betaling Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - j.meuwese@interactievemedia.hva.nl - http://oege.ie.hva.nl/~meuwj/ - http://hva.jochem.nl
oefeningen DOE DE OEFENINGEN 2 DOE DE EXTRA OEFENINGEN