De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Download en installeer de gereedschappen

Verwante presentaties


Presentatie over: "Download en installeer de gereedschappen"— Transcript van de presentatie:

1 Download en installeer de gereedschappen
XAMP Apache server ( http ) mySql server PHP myAdmin IAM SQL oefeningen Database phpmyAdmin Import : sql_producten.sql , sql_winkel.sql, festival.sql SAMS’ SQL in 10 minuten mySQL reference Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

2 SQL deel 1: SQL queries Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

3 SQL en database ontwerp
Deel 1 ( week 2 – 5 ) SQL queries Deel 2 ( week 6 – 9 ) datamodelleren Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

4 Database Architectuur
Een datamodel is het fundament van je toepassing: Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

5 Sql, php, html enzo Front-End Client : Browser | Flash | Feedreader | … URL HTML + CSS (+ JavaScript ) | XML WebServer ( + scripting) : PHP | ASP | JSP SQL querie Datatabel (recordset ) DataBase ( gegevens ) : mySQL| Oracle | MSSQL Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

6 Wat is een database DB: Database
Een verzameling tabellen gevuld met data RDBMS: Relationeel Database management systeem Software om een database te creëren en te manipuleren Oracle mySQL SQL-server MS ACCESS SQL: Structured Query Language Taal om met een database te praten Informatie selecteren Informatie toevoegen, veranderen, wijzigen Tabellen definiëren Relaties tussen tabellen definiëren Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

7 Client-Server architectuur
Onderscheid Database-server ( SQL-server, Oracle ) Database-cliënt ( MS ACCESS, web-server ) NB: MS ACCESS kan ook zonder server direct met een database werken Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

8 Vraag Wat is phpMyAdmin? [ ] een database server
[ ] een database client Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

9 Het selecteren van data uit een enkelvoudige tabel
SQL 1 : SELECT Het selecteren van data uit een enkelvoudige tabel Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

10 Vandaag 1 --------------------------- Tabel: rijen en kolommen
SELECT … FROM … WHERE …ORDER BY .. Datatypen (numeriek, tekst, boolean, datum/tijd) Diverse functies ( SQL reference ) Aggregaties en statistieken GROUP BY DISTINCT Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

11 tabellen Een database bestaat uit een verzameling tabellen
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

12 Hoe zit data in een database?
Tabellen, bijvoorbeeld : telefoonnummers Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

13 tabel Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

14 rij Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

15 kolom Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

16 veld Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

17 datatype Type informatie in een veld basis datatypen
Bepaalt het soort operaties dat je er op kan uitvoeren. basis datatypen Numeriek optellen, aftrekken, gemiddelde Tekst aan_elkaar_plakken, substring, teveel_spaties_verwijderen, zoek_en_vervang Boolean and, or, xor, not Binair/BLOB geen operaties Datum/tijd Lange tekst XML Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

18 Datatype: numeriek Optellen , aftrekken, etc, Sinus, cosinus,
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

19 Datatype: tekst Zoek en vervang Hoofdletters zetten Aan elkaar plakken
Reguliere expressies (voor gevorderden ) Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

20 Datatype: boolean (ja/nee , waar/onwaar, )
And, or, not Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

21 BLOB Binary large object Bijv: beeldmateriaal, geluid, bestanden.
Operaties: geen Vaak niet in een database maar als aparte bestanden, wel bestandsnaam in de database Er bestaan speciale databases met speciale functies voor speciale bestanden Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

22 Speciale datatype: datum/tijd
Eigenlijk ‘numeriek’: aantal milliseconden sinds het jaar nul ( of sinds 1900 ) Echter : Speciale onregelmatige rekeneenheden ( maanden, schrikkeljaar, etc ) Speciale manier van weergeven ‘ ’ of ‘ ’ of ‘1 jan 2004’ Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

23 Speciaal datatype: lange tekst
Tekst kan worden onderverdeeld in Korte tekst ( <255 karakters ) Lange tekst ( >255 karakter ) Slecht een puur technische onderscheid Heeft te maken met Efficiënt gebruik van geheugenruimte. Andere manier van zoeken Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

24 XML in een database XML als datatype:
XML data opgeslagen in een database-veld Speciale XML functies SQL/XML standaard wordt nog niet door alle RDBMS’s ondersteund NB: geen stof voor tentamen, wel mogelijkheid tot bonuspunten Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

25 Onzinnige datatypen in ACCESS
Valuta Hyperlink Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

26 Basis datatype Type informatie in een veld
Bepaald het soort operaties dat je er op kan uitvoeren. basis datatypen die in iedere database of programmeertaal op één of andere manier worden ondersteund: Numeriek Tekst Boolean Binair Datum/tijd Lange tekst XML Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

27 Vraag? Welke data type is Telefoonnummer? Huisnummer? Leeftijd?
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

28 En dan nu... SQL Structured Query Language
Een taal om database te bevragen en te manipuleren. Als sinds begin 70 relatief stabiel Ondersteund door ieder DBMS Selecteren en wijzigen van opgeslagen gegevens Aanbrengen/veranderen van de structuur van de database Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

29 Syntax van een eenvoudige SELECT
SELECT ID, naam, prijs FROM product SELECT {kolomnamen} FROM {tabelnaam} Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

30 SELECT resultaat Het resultaat van een SQL query is altijd een tabel.
SELECT ID, naam, prijs FROM product ID naam prijs 1 Koken voor … 20,10 7 appelsap 2,95 8 groentensoep 2,15 9 blik tonijn 3,10 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

31 Syntax van een eenvoudige SELECT
SELECT ID, naam, prijs FROM product WHERE categorie = ‘voedsel’ ORDER BY prijs SELECT {kolomnamen} FROM {tabelnaam} WHERE {criteria} ORDER BY {kolomnaam} Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

32 SELECT resultaat SELECT ID, naam, prijs FROM product WHERE categorie =‘voedsel’ ORDER BY prijs ID naam prijs 8 groentensoep 2,15 7 appelsap 2,95 9 blik tonijn 3,15 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

33 Korte opdracht (10 min ) Doe je eerste SQL querie op de ‘producten’-database SELECT … FROM … WHERE … ORDER BY … Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

34 Syntax van een eenvoudige SELECT variaties
SELECT naam, prijs FROM product WHERE categorie = ‘boek’ ORDER BY prijs SELECT product.naam, product.prijs FROM product WHERE product.categorie = ‘boek’ ORDER BY product.prijs SELECT [product.naam], [product.prijs] FROM product WHERE [product.categorie] = ‘boek’ ORDER BY [product.prijs] Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

35 SELECT WHERE SELECT naam, prijs FROM product WHERE categorie = ‘eten’ AND prijs < 5 ORDER BY producent , prijs DESC Logische operaties: AND, OR, NOT Vergelijkingen: =, >, < , <> , <=, >=, LIKE Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

36 ‘Datatype’ De informatie in de cellen van een kolom zijn allemaal van hetzelfde ‘type’ Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

37 enumeraties Opsommingen / lijstjes Bijvoorbeeld:
Dag_van_de_week [ma,di,wo,do,vr,za,zo] Sterrenbeeld [steenbok, waterman, etc… ] Categorie [voedsel, boek, vervoermiddel ] Meer over enumeraties in deel 2: datamodelleren Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

38 SQL: databewerkingen Structured Query Language
Een taal om database te bevragen en te manipuleren. Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

39 Berekeningen in SELECT (numeriek)
Selecteer de naam, prijs en prijs_plus_btw SELECT naam, prijs, prijs + prijs* btw_tarief/ AS prijs_met_btw FROM product Naam prijs prijs_met_btw fiets brood 1 1,05 boek Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

40 Berekeningen in SELECT (datum)
Selecteer de naam en de ‘leeftijd’ van een product SELECT naam, beschikbaar_vanaf, DATEDIFF( 'yyyy' , beschikbaar_vanaf , DATE() ) AS leeftijd FROM product; WHERE beschikbaar_vanaf <= DATE() Naam beschikbaar_vanaf leeftijd fiets brood boek Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

41 Functies en operatoren
Gebruik de (my)SQL reference : Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

42 Aggregaties/statistieken
Dwz: Informatie uit een tabel als geheel (ipv uit een rij) Voorbeelden: Gemiddelde Aantal Hoogste Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

43 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

44 ‘SELECT’ query Het selecteren van informatie uit een tabel bijvoorbeeld ‘product’ -tabel selecteer productnamen en productprijzen uit de tabel ‘product’ selecteer namen van producten uit de categorie 'boeken' Selecteer alle producten die duurder zijn dan 5 euro Selecteer een lijst met alle categorie-namen Selecteer de gemiddelde prijs van de producten per categorie Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

45 Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

46 Verschillende soorten selecties
Rijen Selecteren van kolommen (hst 2) Sorteren (hst 3) Filteren van rijen (hst 4,5,6) Het berekenen van kolommen (hst 7,8) Aggregaties Statistieken ( hst 9 ) Groeperen ( hst 10 ) Lijst van voorkomende waarden ( ? ) Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

47 statistieken SELECT COUNT(*) AS aantal, AVG(prijs) AS midPrijs, MAX(prijs) AS maxPrijs, MIN(prijs) AS minPrijs FROM product Aantal midPrijs maxPrijs minPrijs Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

48 Statistieken per groep
SELECT categorie, COUNT(*) AS aantal, AVG(prijs) AS midPrijs, MAX(prijs) AS maxPrijs, MIN(prijs) AS minPrijs FROM product GROUP BY categorie Categorie aantal gemPrijs maxPrijs minPrijs boek 5 30, voedsel vervoer 3 2,75 3, Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

49 GROUP BY vs ORDER BY GROUP BY: Alleen in combinatie met een statistische functie gemiddelde prijs per categorie ORDER BY Sortering van rijen Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

50 Speciaal geval: SELECT DISTINCT
SELECT DISTINCT categorie, FROM product categorie vervoer voedsel boek Is hetzelfde als: SELECT categorie FROM product GROUP BY categorie Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

51 oefenen Doe de oefeningen uit de reader !
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese

52 Volgende week Meerdere tabellen in de database
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese


Download ppt "Download en installeer de gereedschappen"

Verwante presentaties


Ads door Google