Relationele database. Het relationele model
|
|
- Martha de Winter
- 7 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Module SQL
2 Relationele database. Een database, gegevensbank of databank is een verzameling van gegevens, ingericht met oog op makkelijke raadpleging en gebruik. Databases spelen een belangrijke rol in het opslaan en beheren van gegevens bij onder meer de overheid, financiële instellingen en bedrijven en worden op kleinere schaal ook privé gebruikt. Databases heb je in allerlei soorten en maten. Je hebt ook eenvoudige tabellen of kaartenbakken. Wanneer je de computer gebruikt heb je een kleine database in allerlei programma s, zoals bijvoorbeeld het adressenboekjes bij je programm De grootste databases vind je bij banken, verzekeringen en andere instellingen en deze zijn digitaal opgeslagen. Hoe een database er ook uit mag zien, ze moeten allemaal aan de volgende minimale (CRUD) voorwaarden voldoen om als database gezien te worden: 1. Gegevens moeten eenvoudig kunnen worden opgeslagen (Create). 2. Gegevens moeten eenvoudig kunnen worden opgezocht en doorzocht (Read). 3. Gegevens moeten onderhouden kunnen worden (Update). 4. Gegevens moeten verwijderd kunnen worden zonder dat dat de werking van dat systeem nadelig beïnvloedt (Delete). Om aan deze voorwaarden te kunnen voldoen is een essentiële regel belangrijk: De database moeten integer zijn: 1. Gegevens moeten consistent zijn en mogen bijvoorbeeld niet dubbel worden opgeslagen. 2. De gegevens moeten geautoriseerd toegevoegd, onderhouden of verwijderd worden. Met andere woorden: de database moet beschermd worden tegen onbevoegde gebruikers. Vaak wordt dit gedaan aan de hand van een gebruikersnaam en een wachtwoord. Wanneer databases groter worden, is het erg belangrijk dat ze goed georganiseerd zijn. Dit is nodig om goed beheer mogelijk te maken en ervoor te zorgen dat informatie uit de database opgevraagd kan worden. Bij het beheren van een database horen hulpmiddelen. We noemen dit een database-managementsystem (DBMS), bijvoorbeeld Microsoft Access. Om informatie uit een digitale database op te vragen kan je de database vragen stellen met behulp van een query. Er zijn verschillende soorten talen voor queries maar wij houden ons vooral bezig met Structured Query Language (SQL). Het relationele model Er bestaan verschillende modellen voor databasesystemen, verschillende manieren om een database op te zetten. Het belangrijkste model is het relationele model. In een relationeel model worden alle gegevens opgeslagen in tabellen. Zo zal bijvoorbeeld alle contactgegevens van leerlingen op een school in 1 tabel opgeslagen zijn.
3 LEERLINGEN VOOR TUSSEN ACHTER HUIS GE LLNR STRAAT POSTCODE PLAATS TELEFOON GEB_DATUM KLAS NAAM VOEGSEL NAAM NUMMER SLACHT 80 Lorraine Portiek Vaartserijnstraat TC Utrecht v 29-sep-81 5b 81 Patrick Heijmans Krozengaarde JB Houten m 21-apr-82 5a 82 Gita Kalisadra Frederik van AZ Vleuten v 11-apr-82 6a Eedenstr. 83 Aniel Mangakas Verl KH Utrecht m 08-okt-81 6b Hoogravenseweg 84 Wendy van der Berk Langeweg aW Vianen v 29-aug-83 5b 85 Nastasja van Kesteren Merwedekade JB Utrecht v 07-nov-82 4a Het relationele model is bedacht door de wiskundige E.F. Codd, toen werkzaam bij de computergigant IBM, en gepubliceerd en De term relationeel is afkomstig uit de wiskunde. In de verzamelingenleer bestaat het begrip relatie. Het idee is dat je met zinnen als 'Leerling y zit in klas x' een relatie legt tussen leerlingen en klassen. Bijvoorbeeld "Jantine de Bakker zit in 4b". De elementen van deze relatie geven de kolommen leerlingen en klas. In een rij van de tabel komen dan "Jantine de Bakker' en "4b". Hier komen we bij het maken van het project op terug. Leerling klas Jantine de Bakker 4b Voorbeeld van een database. In deze module gaan we aan het werk met twee verschillende databases om mee te oefenen. Eén van deze databases behoort tot een schoolbibliotheek. Deze database heeft 6 tabellen die elk uit verschillende kolommen bestaan. De kolomnamen zijn zo gekozen dat ze zichzelf verklaren. In sommige gevallen kort je de kolomnaam in.
4 In de schoolbibliotheek kunnen meerdere exemplaren aanwezig van hetzelfde boek. Om de boeken toch te onderscheiden in een database heeft elk boek zijn eigen exemplaarnummer, wat terug te vinden is in de database als EXNR. In de tabel Exemplaren kan je zien dat aan elk exemplaar een boeknummer is gekoppeld. Dit boeknummer is weer terug te vinden in de het tabel Boeken en via het Auteurnummer (AUTNR) kan je terugvinden wie het heeft geschreven. Dit lijkt omslachtig maar is wel van belang. Stel je voor dat je de tabellen Boeken en Auteur samenvoegt en je dus bij elk boek alle gegevens van de auteur erbij zet. Auteurs schrijven vaak meerdere boeken en dus staan de gegevens van de auteur meerdere keren in de database en, zoals al eerder aangegeven, mogen gegevens niet dubbel voorkomen in een database. Mocht je bijvoorbeeld een auteur hebben die 15 boeken heeft geschreven die overlijdt dan moet je zijn sterfdatum op 15 verschillende plekken invullen en zodra je er één vergeet klopt je database niet meer. Opdrachten Bekijk de inhoud van de tabellen in de bibliotheekdatabase. b. Waarom kent de tabel reserveringen geen kolom Exnr. Een persoon bestelt meestal niet meerdere exact dezelfde versies van een boek.
5 SQL Een sql-query kent een vaste structuur. Je moet aangeven over welk tabel het gaat en welke kolommen en rijen je te zien wilt krijgen. In SQL kun je die vaste structuur herkennen aan de sleutelwoorden. De sleutelwoorden kun je het best steeds vooraan een nieuwe regel zetten en worden met hoofdletter opgeschreven. Dit is niet noodzakelijk, maar maakt het wel overzichtelijker. De basisstructuur van een eenvoudige query is: SELECT (geef aan welke kolommen je wilt zien) FROM (geef aan uit welke tabellen deze kolommen komen) WHERE (Geef aan welke voorwaarden moeten gelden. Dit bepaalt welke rijen je te zien krijgt); Let op! Een query eindigt altijd met ; Een eerste query. Laten we beginnen met een simpele query die alle namen van de leerlingen opvraagt uit de database van de schoolbibliotheek. 1. Om te beginnen start je Access op en open je het bibliotheek.mdb databasebestand. 2. Selecteer het create -tabblad bovenaan je scherm 3. Klik op 'Query Design' 4. Klik op close
6 5. Verander de view naar SQL. 6. Voer in: SELECT voornaam, tussenvoegsel,achternaam ; 7. druk op run Als alles goed gegaan is heb je nu een tabel met alle namen van de leerlingen. Opdrachten Voor de volgende query uit: SELECT achternaam, tussenvoegsel, achternaam, ; Wat is het verschil in de resultaten en vergelijking met: SELECT voornaam, tussenvoegsel, achternaam ; De eerste query geeft nu een error omdat de SELECT een komma heeft aan het eind, wat niet zo hoort. b. Hoe ziet de query eruit als je alle kolommen van de tabel leerlingen wil selecteren? SELECT * ;
7 Om bovenstaande opdracht uit te voeren kan je ervoor kiezen om elke kolomnaam van de tabel leerlingen achter SELECT te plaatsen. Dit kost tijd en is gevoelig voor schrijffouten. Eén schrijffout en je query werkt niet. Als je alle kolommen van een tabel wil hebben is het niet nodig om al die namen op te schrijven maar simpel weg een * te gebruiken. SELECT * ; ORDER BY Lijsten van leerlingen zijn altijd in volgorde van hun achternaam opgeschreven. Dit maakt het vinden van een leerling op zo'n lijst makkelijker. Als we onze query uitbreiden met een regel ORDER BY wordt de lijst met leerlingen gesorteerd op hun achternaam: SELECT voornaam, tussenvoegsel,achternaam ORDER BY achternaam; Je kan de kolommen waarop je sorteert ook anders aanduiden. In plaats van de naam van deze kolom noem je dan het volgnummer van de kolom. Dit nummer vind je door naar de volgorde te kijken waarin ze achter SELECT staan vermeld. SELECT voornaam, tussenvoegsel,achternaam,klas ORDER BY 3; Op vele scholen worden leerlingen niet alleen gesorteerd op hun achternaam, maar ook in welke klas ze zitten. Vaak is het zo dat ze eerst gesorteerd worden op klas en dan pas op achternaam. Om dit voor elkaar te krijgen zet je beide kolommen achter ORDER BY met een komma ertussen: SELECT voornaam, tussenvoegsel,achternaam,klas ORDER BY klas, achternaam; Tenslotte kun je op twee manieren sorteren: oplopend (A-Z) of aflopend (Z- A). Gezien er in SQL enkel Engelse woorden worden gebruikt krijg je ascending en descending, afgekort tot ASC en DESC. Als je niks vermeldt, wordt er automatisch oplopend gesorteerd. Om aflopend te sorteren geef je dit aan door achter de kolomaanduiding na ORDER BY je keuze te vermelden. SELECT voornaam, tussenvoegsel,achternaam,klas ORDER BY 3 DESC; Opdrachten Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. Maak een lijst van alle auteurs gesorteerd op achternaam. SELECT voornaam, achternaam FROM auteurs ORDER BY achternaam; b. Maak een lijst van alle boeken gesorteerd op Rubriek en dan op titel. SELECT rubriek, titel FROM boeken ORDER BY rubriek, titel;
8 DISTINCT Als we een overzicht willen hebben van de woonplaatsen van alle leerlingen zouden we de volgende query uit kunnen voeren: SELECT plaats ; Het resultaat levert een lange lijst van woonplaatsen waarvan de eerste tien hier zijn gegeven: Query1 plaats Odijk Nieuwegein Utrecht Houten Utrecht Utrecht Utrecht Schalkwijk Utrecht Bunnik... Het valt meteen op dat alleen al in de eerste tien er meerdere keren Utrecht vermeld staat. Dit maakt het niet overzichtelijk om erachter te komen uit welke steden alle leerlingen komen. Om het overzichtelijk te maken willen we elke plaats maar één keer in de lijst hebben staan. We voegen daarvoor het sleutelwoord DISTINCT toe aan de query. SELECT DISTINCT plaats ; Opdrachten Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. Maak een lijst van alle bestaande rubrieken. SELECT DISTINCT rubriek FROM boeken; b. Maak een oplopende lijst van alle klassen die in zich in het systeem bevinden. SELECT DISTINCT klas ORDER BY klas ASC;
9 WHERE Leraren hebben niet veel aan een lijst met alle leerlingen van hele school, maar willen graag een lijst van leerlingen die in een bepaalde klas zitten. Gelukkig is het in SQL mogelijk om voorwaarden mee te geven aan een query om zo de gewenste rijen te selecteren zodat enkel die rijen worden gegeven. Willen we een lijst hebben van leerlingen die in klas 5a zitten kunnen de we volgende query uitvoeren: WHERE klas = '5a' ORDER BY achternaam; Let op! SQL werkt met verschillende datatypes en de meest gebruikte zijn integers (cijfers) en Strings (woorden/zinnen). Bij een String moeten altijd aanhalingstekens gebruikt worden en daarom staat er klas = '5a' Naast enkel het = teken zijn er andere operatoren van de wiskunde die gebruikt kunnen worden. < en > betekenen kleiner dan en groter dan <= en >= beteken kleiner dan of gelijk aan en groter dan of gelijk aan. <> betekent niet gelijk aan elkaar. Dit wil weleens per programma verschillen. Soms komt het voor dat er in een kolom niet alle rijen zijn ingevuld. Als je bijvoorbeeld kijkt bij de tabel auteurs, heeft niet elke auteur een sterfjaar. Een lege cel in een tabel heeft de waarde NULL. Als je alle auteurs wil selecteren zonder sterfjaar gebruik je de query: WHERE sterf_jaar IS NULL ORDER BY achternaam; Opdrachten Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. Maak een alfabetische lijst van alle titels van de boeken uit de rubriek biologie. SELECT titel FROM boeken WHERE rubriek = "biologie" ORDER BY titel; b. Maak een lijst met alle auteurs die na 1950 zijn geboren. FROM auteurs WHERE geb_jaar > 1950; c. Maak een lijst met alle leerlingen waarvan het telefoonnummer onbekend is. WHERE telefoon IS NULL;
10 In veel gevallen komt het voor dat je meerdere eisen wil stellen, zoals een lijst van alle meiden uit 5 Dit noemen we samengestelde voorwaarden. Om voorwaarden samen te stellen gebruik je de sleutelwoorden OR en AND, zoals bij booleaanse algebra (zie module 1 Logica). Om alle meiden uit 5a te selecteren kan je de volgende query gebruiken: WHERE klas = '5a' AND geslacht = 'v' ORDER BY achternaam; Je mag zoveel voorwaarden als je wil samenstellen, zolang er maar tussen elke voorwaarde een OR of AND staat. Deze query bijvoorbeeld zoekt naar een leerlingen genaamd Jantine de Bakker : WHERE voornaam = 'Jantine ' AND tussenvoegsel = 'de' AND achternaam = 'Bakker'; Zoals al eerder aangegeven is het niet verplicht om elk sleutelwoord op een nieuwe regel te plaatsen. We kunnen de vorige query ook op de volgende manier opschrijven wat duidelijk een stuk minder overzichtelijk is: WHERE voornaam = 'Jantine ' AND tussenvoegsel = 'de AND achternaam = 'Bakker'; Opdrachten Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. Maak een lijst met alle leerlingen uit 4b die in Utrecht wonen. WHERE klas = 4b AND plaats = Utrecht ; b. Jantine moet een lijst maken met alle meiden die wonen in Houten of Schalkwijk. Ze gebruikt de query:, geslacht WHERE (plaats = 'houten' OR plaats = 'Schalkwijk') AND geslacht = 'v' ORDER BY achternaam; Tot haar verbazing krijgt ze wel alle meiden uit Schalkwijk maar ze krijgt zowel alle meiden als jongens die in Houten wonen. Repareer de query zo dat ze dus een lijst krijgt met enkel de meiden uit Schalkwijk of Houten. c. Maak een lijst met alle leerlingen die in de 5e klas zitten., klas WHERE klas = 5a OR klas = 5b ;
11 LIKE De vorige opgave is op te lossen door achter WHERE alle verschillende 5e klassen aan te geven door klas = '5a' OR klas = '5b'. In dit geval zijn er maar 2 verschillende 5e klassen maar vaak komt het voor dat er veel meer 5e klassen zijn. Om ze niet allemaal op te hoeven schrijven kunnen we als hulpmiddel een * (sommige programma's gebruiken %) of _ gebruiken. De * houdt in dat je niet weet welke en hoeveel tekens er nog volgen en de _ houdt in dat er precies één teken mist, maar het niet uit maakt welke. Willen we dus alle jongens uit de 5e klas hebben gebruiken we: WHERE klas LIKE '5_ ' AND geslacht = 'm' ORDER BY achternaam; Willen we alle leerlingen die een postcode hebben dat begint met 496 gebruiken we: SELECT voornaam, tussenvoegsel,achternaam WHERE postcode LIKE '496* ' ORDER BY achternaam; Opdrachten Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. Maak een lijst met alle leerlingen waarvan de achternaam begint met Frederi WHERE achternaam LIKE frederi* ; b. Je bent op zoek naar de achternaam van de auteur Willem Frederik maar je weet niet zeker of Frederik met een c of k eindigt. FROM auteurs WHERE voornaam LIKE Willem Frederi_ ;
12 Functies Aan het einde van het schooljaar wil de directie weten hoeveel verschillende soorten boeken ze in de bibliotheek hebben staan, maar ze hebben niet de tijd om ze allemaal te gaan tellen. Gelukkig heeft SQL verschillende functies die daar bij kunnen helpen. Eén daarvan is COUNT : SELECT COUNT(*) FROM boeken; Het resultaat is enkel een getal dat precies aangeeft hoeveel rijen er de tabel Boeken staat. Zo is er nog een aantal functies, maar in tegenstelling tot COUNT moeten deze functies wel gekoppeld worden aan een kolomnaam. Om te voorkomen dat COUNT dubbele regels telt is het mogelijk DISTINCT toe te voegen, maar dan is het wel van belang om een kolomnaam toe te voegen: COUNT(DISTINCT kolomnaam). SUM(kolomnaam) Hiermee bereken je som van alle getallen in een kolom. Het is dan ook van belang dat het een kolom is met getallen. MAX(kolomnaam) Levert de grootste waarde in een kolom. MIN(kolomnaam) Levert de laagste waarde in een kolom AVG(kolomnaam) Berekent het gemiddelde van alle getallen in een kolom. De query: SELECT SUM(boete) FROM uitleningen; levert het totale bedrag dat betaald is een boetes. Opdrachten Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. Wat is de grootste boete die iemand heeft moeten betalen SELECT MAX(boete) FROM uitleningen; b. Hoeveel boeken zijn er in reparatie. SELECT COUNT(exnr) FROM exemplaren WHERE status = 'in reparatie'; c. In hoeveel rubrieken zijn de boeken in de bibliotheek opgedeeld. SELECT COUNT(DISTINCT rubriek) FROM boeken;
13 Groeperen Met de functie COUNT is het eenvoudig om van elke klas erachter te komen hoeveel leerlingen erin zitten: SELECT COUNT (*) WHERE klas = '4a'; SELECT COUNT (*) WHERE klas = '4b'; SELECT COUNT (*) WHERE klas = '5a'; SELECT COUNT (*) WHERE klas = '5b'; Maar dit is natuurlijk onhandig om dat voor elke klas te doen. We zouden eerst de leerlingen moeten groeperen per klas en dan pas tellen hoeveel leerlingen er in elke groep zitten. Om dit te kunnen doen gebruikt je het sleutelwoord GROUP BY: SELECT klas, COUNT (*) GROUP BY klas; Dit is de enige keer dat er een kolom en een functie te combineren zijn in de SELECT-regel, namelijk met een extra regel met GROUP BY (kolomnaam). Het is mogelijk om te groeperen met voorwaarden. Stel je voor dat je alle klassen met meer dan 25 leerlingen wil hebben. Hiervoor kan je het sleutelwoord HAVING voor gebruiken: SELECT klas, COUNT (*) GROUP BY klas HAVING COUNT(*) >= 25;
14 Opdrachten Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. Hoeveel jongens en meiden zitten er op school. SELECT geslacht, COUNT(*) GROUP BY geslacht; b. Maak een lijstje van aantallen leerlingen per woonplaats. SELECT plaats, COUNT(*) GROUP BY plaats; c. Hoeveel boeken zijn er van elke rubriek aanwezig? SELECT rubriek, COUNT(*) FROM boeken GROUP BY rubriek; d. Uit welke plaatsen komen meer dan tien leerlingen? SELECT plaats, COUNT(*) GROUP BY plaats HAVING COUNT(*) > 10;
15 Tabellen koppelen. In het tabel reserveringen zijn er drie leerlingen die hun reserveringkosten nog niet hebben betaald. De medewerkers van de bibliotheek willen graag weten welke leerlingen dit zijn, maar in het tabel staan enkel leerlingnummers. Ze stellen de volgende query op om erachter te komen welke leerlingen nog niet hebben betaald:, kosten_betaald, reserveringen WHERE kosten_betaald='n'; In plaats van dat ze de namen krijgen van de drie leerlingen krijgen ze een lange lijst waarin alle leerlingen drie keer in voor komen. Query1 voornaam tussenvoegsel achternaam kosten_betaald Janco Dijke van n Janco Dijke van n Janco Dijke van n Rene Bokker n Rene Bokker n Rene Bokker n Marco van Bemmel n Marco van Bemmel n Marco van Bemmel n Om duidelijkheid te krijgen wat hier misgaat willen ze de leerlingnummers er ook bij hebben. Gezien zowel de tabel leerlingen als reserveringen een kolom hebben met de naam LLNR moet er een onderscheid gemaakt worden. Om aan te geven uit welk tabel de kolom komt zetten we tabelnaam eerste gevolgd door de kolomnaam met een punt ertussen:, kosten_betaald, leerlingen.llnr, reserveringen.llnr, reserveringen WHERE kosten_betaald='n'; Query1 voornaam tussenvoegsel achternaam kosten_betaald leerlingen.llnr reserveringen.llnr Janco Dijke van N Janco Dijke van N Janco Dijke van N Rene Bokker N Rene Bokker N Rene Bokker N Marco van Bemmel N Marco van Bemmel N Marco van Bemmel N 53 66
16 Hieruit is te zien dat de leerlingennummers van beide tabellen niet goed gekoppeld worden. Om dat voor elkaar te krijgen moet er een voorwaarde bij komen:, kosten_betaald, leerlingen.llnr, reserveringen.llnr, reserveringen WHERE leerlingen.llnr = reserveringen.llnr AND kosten_betaald = n ; Query1 voornaam tussenvoegsel achternaam Monique Aalbers Ilse Dennis Ebbenhorst Smets Om duidelijk te maken wat er precies is gebeurd als je twee tabellen samenvoegt, volgt hier een klein voorbeeld. Naam Niels Ingrid Alice Woonplaats Utrecht Houten Utrecht Naam Niels Ingrid Alice Postcode 3522PG 3991BD 3586aS Stel je wilt deze twee tabellen samenvoegen tot een geheel. Je zou dan de volgende query kunnen gebruiken: SELECT plaats.naam, woonplaats, postcode FROM plaats, postcode Dit levert: Niels Utrecht 3522PG Niels Utrecht 3991BD Niels Utrecht 3586aS Ingrid Houten 3522PG Ingrid Houten 3991BD Ingrid Houten 3586aS Alice Utrecht 3522PG Alice Utrecht 3991BD Alice Utrecht 3586aS Hij koppelt elke rij van de ene tabel aan elke elke rij van de andere tabel. Naam Niels Ingrid Alice Woonplaats Utrecht Houten Utrecht Naam Niels Ingrid Alice Postcode 3522PG 3991BD 3586aS
17 Het is dus zeer belangrijk dat als je twee of meer tabellen gebruikt in een query, dat je de tabellen op de juist manier koppelt. Wil je bijvoorbeeld weten welke titels de leerlingen lenen uit de bibliotheek, zou je drie tabellen bij elkaar moeten voegen; namelijk leerlingen, uitleningen en boeken:, titel, uitleningen, boeken WHERE leerlingen.llnr = uitleningen.llnr AND uitleningen.boeknr = boeken.boeknr; Opdrachten Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. Maak een lijst van auteurs en de titels van hun boeken die in de bibliotheek zijn., titel FROM auteurs, boeken WHERE auteurnr = autnr; b. Maak een lijst van leerlingen en de boetes die ze hebben betaald, boete, uitleningen WHERE leerlingen.llnr = uitleningen.llnr; c. Maak een lijst van alle leerlingen en hun reserveringen, titel, reserveringen, boeken WHERE reserveringen.llnr = leerlingen.llnr AND reserveringen.boeknr = boeken.boeknr; d. Welke boeken zijn er in de bibliotheek van schrijvers uit de 19e eeuw?, geb_jaar, titel FROM auteurs, boeken WHERE geb_jaar >= 1800 AND geb_jaar < 1900 AND auteurnr = autnr; e. Van welke auteur zijn er boeken in de reparatie? FROM exemplaren, boeken, auteurs WHERE status = 'in reparatie' AND exemplaren.boeknr = boeken.boeknr AND autnr = auteurnr;
18 Subquery De bibliotheek wil graag weten welke leerling het afgelopen jaar de hoogste boete heeft betaald. Daarvoor moeten we twee vragen beantwoorden. Wat was de hoogste boete en wie moest die betalen. De eerste vraag is het eenvoudigst: SELECT MAX(boete) FROM uitleningen; De hoogste boete blijkt f4,- te zijn. Nu moeten we alleen nog uitzoeken bij welke leerlingen deze boete hoort: FROM uitleningen, leerlingen WHERE leerlingen.llnr = uitleningen.llnr AND boete = 4,00; Deze twee queries kunnen samengevoegd worden tot één query met behulp van een subquery: FROM uitleningen, leerlingen WHERE leerlingen.llnr = uitleningen.llnr AND boete = ( SELECT MAX(boete) FROM uitleningen ); Opdrachten Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. Wie is de jongste auteur die ze in hun database hebben staan? FROM auteurs WHERE geb_jaar = ( SELECT MAX(geb_jaar) FROM auteurs); Oefeningen Geef in alle gevallen de query die je hebt gebruikt en niet de resultaten. 1 Maak een lijst van alle presidenten die als hobby vissen hebben SELECT pres_name FROM preshobby WHERE hobby = 'fishing'; 1b. Hoeveel presidenten hebben als hobby vissen? SELECT COUNT(*) FROM preshobby WHERE hobby = 'fishing'; 2. Welke presidenten hebben meer dan 5 kinderen? SELECT pres_name FROM presmarriage
19 WHERE nr_children > 5; 3. Welke presidenten leefde nog toen deze database werd gemaakt? SELECT pres_name FROM president WHERE death_age IS NULL; 4. Welke president was het oudst op zijn trouwdag en hoe oud was hij? SELECT pres_name, pr_age FROM presmarriage WHERE pr_age = ( SELECT MAX(pr_age) FROM presmarriage); 5. Welke presidenten hebben geen volledige periode afgemaakt (één periode duurt 4 jaar) SELECT pres_name FROM president WHERE yrs_serv < 4; 6. Welke presidenten trouwden nadat ze waren gekozen tot president. SELECT presmarriage.pres_name FROM presmarriage, admin WHERE admin.year_inaugurated < presmarriage.year;
20 CRUD Tot nu toe hebben we enkel query s gemaakt die data uit een database kunnen selecteren (Read), de zogenaamde SELECT-queries. SQL kan nog voor veel meer dingen gebruikt worden omtrent databases namelijk het aanmaken van tabellen, invoegen van data (Create), updaten van data (Update) en het verwijderen van data (Delete). CREATE Om te beginnen moet er eerst een database aangemaakt worden. Dit kan met de volgende query: CREATE DATABASE naam; Let erop dat er geen spaties voor mogen komen in de naam van een database. Na het maken van de database kunnen we overgaan op het creëren van tabellen. Net zoals bij de SELECT-query s kent ook deze CREATE-query een standaard opbouw, namelijk: CREATE TABLE naam ( kolomnaam type, kolomnaam type, kolomnaam type, kolomnaam type, kolomnaam type, ); Stel je voor dat je een tabel wil maken met een klantennummer, voornaam, achternaam, adres en een woonplaats. Om dat voor elkaar te krijgen gebruik je deze query: CREATE TABLE naam ( KlantNR int, Voornaam varchar(255), achternaam varchar(255), adres varchar(255), woonplaats verchar(255) ); Types Bij het maken van een database moet je er ook bij bedenken welke type data je in een kolom wil opslaan. Wil je een getal opslaan, een datum of misschien een naam. SQL kent meerdere types en tussen sommige programma s wil daar nog wel eens een verschil tussen zitten. Wij gebruiken in deze module de types die bij MySQL horen. Hieronder staat een rijtje van de belangrijkste en wil je de hele lijst zien kan je surfen naar: Type varchar(grootte) Tekst Enum( x, y, z ) int double date() Beschrijving Een tekst waarvan je de maximum lengte kan aangeven. Bijvoorbeeld voor voornamen, achternamen, wachtwoorden Een tekst van maximaal tekens lang. Wordt vooral gebruikt voor langere stukken tekst bijvoorbeeld een beschrijving van een artikel. Een lijst van mogelijke waardes die ingevuld kunnen worden. Bijvoorbeeld voor geslacht, rubriek, genre Een geheel getal, wordt heel vaak gebruikt voor ID-nummers Een kommaget Een datum in de vorm van JJJJ-MM-DD
21 INSERT Nu het hele database is aangemaakt moet het mogelijk zijn om nieuw data in te voegen, bijvoorbeeld een nieuwe klant. Dit wordt gedaan aan de hand van INSERT: INSERT INTO tabel_naam (Kolomnaam, Kolomnaam) VALUES ( data, data ); Komt het voor dat je in een bepaalde kolom geen data wil plaatsen dan sla je deze kolomnaam over. Let erop dat je de data in dezelfde volgorde zet als je de kolomnamen hebt staan. Komt het voor dat je alle kolommen wilt vullen dan is het niet verplicht deze allemaal op te schrijven als je er maar voor zorgt dat de data in de juiste volgorde staat. Voorbeeld: INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country) VALUES ('Cardinal','Tom B. Erichsen','Skagen 21','Stavanger','4006','Norway'); UPDATE Het kan voorkomen dat een klant zijn wachtwoord wil veranderen, of dat hij misschien is verhuisd. Dit is mogelijk met de UPDATE-query: UPDATE tabelnaam SET kolomnaam1 = waarde1, kolomnaam2 = waarde2, WHERE kolomnaam = waarde; Stel je voor dat de klant met het adres blaat@test.nl zijn wachtwoord wil veranderen. Dan kan je de volgende query gebruiken om dat voor elkaar te krijgen: UPDATE klanten SET wachtwoord='nieuw_ww' WHERE = blaat@test.nl ; DELETE We hebben nu bijna alles gehad van CRUD. Met INSTERT kunnen we nieuwe objecten aanmaken (Create), met behulp van SELECT-query s kunnen we data opvragen (Read) en met de UPDATE is het mogelijk om bestaande informatie aan te passen(update). We missen alleen nu de Delete en dat kan je doen aan de hand van DELETE: DELETE FROM tabelnaam WHERE kolomnaam1 = waarde1; (Je mag meerdere voorwaardes meegeven) Stel je wilt een klant verwijderen met de naam Alfreds Futterkiste gebruik je de volgende query: DELETE FROM klanten WHERE klantnaam='alfreds Futterkiste'
Structured Query Language (SQL)
Structured Query Language (SQL) Huub de Beer Eindhoven, 4 juni 2011 Database: in essentie 0 of meer tabellen elke tabel nul of meer kolommen (of velden) elke tabel nul of meer unieke rijen elke query werkt
Nadere informatieSQL is opgebouwd rond een basisinstructie waaraan één of meerdere componenten worden toegevoegd.
BASISINSTRUCTIES SQL SQL : Structured Query Language is een taal gericht op het ondervragen van een relationele database en die aan veel klassieke databasemanagementsystemen kan worden gekoppeld. SQL is
Nadere informatieMiniles gegevensbanken bevragen met SQL
Miniles gegevensbanken bevragen met SQL In deze miniles gaat het over gegevensbanken of databases. Dit zijn bestanden waarin gegevens kunnen worden opgeslagen. Het is dan van belang dat je op een eenvoudige
Nadere informatieLes S-02: Meer geavanceerde SQL-instructies
Les S-02: Meer geavanceerde SQL-instructies 2.0 Overzicht les 1: De basisvorm van een SQL query ziet er als volgt uit: (DISTINCT) selecteer de velden uit de tabel waar de volgende voorwaarde geldt ; Bij
Nadere informatieQuery SQL Boekje. Fredrik Hamer
Query SQL Boekje Query SQL Boekje Fredrik Hamer Schrijver: Fredrik Hamer Coverontwerp: Fredrik Hamer ISBN: 9789402162103 Fredrik Hamer Inhoudsopgave A. Aanhef bepalen 17 Aantal 18 Aantal dagen tussen
Nadere informatie11. Het selecteren van gegevens deel II
11. Het selecteren van gegevens deel II 11.1. Inleiding In hoofdstuk 7 heb je kennis gemaakt met het statement Select. In dit hoofdstuk ga je wat dieper in op het statement. Je gaat sorteren / groeperen
Nadere informatie= > >= < <= BETWEEN IS NULL IS NOT NULL
Select queries SELECT...FROM... SELECT DISINCT...FROM... WHERE...AND...OR...NOT...LIKE...IN = > >= <
Nadere informatieToon TITEL, JAAR en PLATVORM van GAMES die voor het jaar 2000 uitkwamen op Nintendo 64
Klas Veldnaam Datatype Lengte KLASNAAM Short Text 3 Characters JONGENS Number Integer MEISJES Number Integer Lessen Veldnaam Datatype Lengte KLASNAAM Short Text 3 Characters DOCCODE Short Text 3 Characters
Nadere informatieInformatie & Databases
Informatie Wat is informatie en waaruit het bestaat? Stel op een kaart staat het getal 37 geschreven. Wat kun je dan zeggen van het cijfer 37? Niets bijzonders, toch? Alleen dat het een getal is. Gaat
Nadere informatieSQL Aantekeningen 3. Maarten de Rijke mdr@science.uva.nl. 22 mei 2003
SQL Aantekeningen 3 Maarten de Rijke mdr@science.uva.nl 22 mei 2003 Samenvatting In deze aflevering: het selecteren van tuples, operaties op strings, en aggregatie functies. Verder kijken we naar iets
Nadere informatieRelationele databases en SQL
Relationele databases en SQL Bij deze lesstof hoort de Access-database Bibliotheek.mdb 1 STRUCTUUR IN INFORMATIE: NAAR EEN RELATIONELE DATABASE Een gegevensbank is een verzameling van gegevens. Gegevensbanken
Nadere informatieDatabases - Inleiding
Databases Databases - Inleiding Een database is een verzameling van een aantal gegevens over een bepaald onderwerp: een ledenbestand van een vereniging, een forum, login gegevens. In een database worden
Nadere informatie12. Meer dan één tabel gebruiken en sub-queries
12. Meer dan één tabel gebruiken en sub-queries 12.1. Inleiding In de vorige hoofdstukken heb je telkens queries uitgevoerd op één tabel. In de praktijk is het raadplegen van gegevens over het algemeen
Nadere informatieDATAMODEL SQL. Middelbare School. Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1
DATAMODEL SQL Middelbare School Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1 INHOUDSOPGAVE 1. Informatiedomein 3 1.1 Informatiedomein 3 1.2 Toepassingen 3 2.
Nadere informatieVan CaseTalk naar een database in SQLite studio
Van CaseTalk naar een database in SQLite studio Dit document legt uit hoe je een SQL export uit CaseTalk kunt importeren in het DBMS (Database Management System) SQLite Studio. SQLIte studio is handig
Nadere informatieEn hoe gaan ze dit allemaal terugvinden?
En hoe gaan ze dit allemaal terugvinden? Taak 1.2.10 Thomas Muller Paul van der Linden MT1A Tutor: van Griensven Docent: van den Biggelaar Gemaakt door Thomas Muller en Paul van der Linden Pagina 1 van
Nadere informatieKoppeling met een database
PHP en MySQL Koppeling met een database 11.1 Inleiding In PHP is het eenvoudig om een koppeling te maken met een database. Een database kan diverse gegevens bewaren die met PHP aangeroepen en/of bewerkt
Nadere informatieIntroductie (relationele) databases
Eerste les Introductie (relationele) databases Database en DBMS Een verzameling van gestructureerd opgeslagen gegevens Dus ook een kaartenbak is een database Van oudsher waren er hiërarchische en netwerkdatabases
Nadere informatieDBMS. DataBase Management System. Op dit moment gebruiken bijna alle DBMS'en het relationele model. Deze worden RDBMS'en genoemd.
SQL Inleiding relationele databases DBMS DataBase Management System!hiërarchische databases.!netwerk databases.!relationele databases.!semantische databases.!object oriënted databases. Relationele databases
Nadere informatieSQL STATEMENTS. Deze kolom kan grote stukken tekst aan en is bedoeld om tekst erin de plaatsen. Geheel getal, bijvoorbeeld 8, 63, 835 NUMERIC
Aantekeningen IRDB Vak: IRDB > Infrma1ca Rela1nele DataBase Onderstaande database scripts zijn gebaseerd p PstgreSQL. Standaarden Schrijf SQL wrden al1jd in hfdlefers, k al werkt het met kleine lefers;
Nadere informatieInleiding... 3. 1 Databases en Data Base Management Systems... 3. 2 Tabellen... 3. 3 Wat is SQL?... 5
1 Inhoudsopgave. Inleiding.... 3 1 Databases en Data Base Management Systems.... 3 2 Tabellen.... 3 3 Wat is SQL?... 5 4 Gegevens opvragen (deel 1).... 5 4.1 Boolean operatoren.... 7 4.2 IN en BETWEEN
Nadere informatieDatabases SQL - meerdere tabellen
Databases SQL - meerdere tabellen Nut van een database Dilbert 1 Reservering Lezer Uitgave Filiaal Basis zaken Uitlening Exemplaar NB: er kan verschil in smaak zitten tussen M1a en S1a notatie Join : het
Nadere informatieSQL.
SQL joost.vennekens@kuleuven.be Mogelijkheden Tabellen maken: create table Tabellen verwijderen: drop table Tabellen vullen: insert into Tabellen wijzigen: update, delete from Gegevens opvragen: select
Nadere informatieDBMS SQL. Relationele databases. Sleutels. DataBase Management System. Inleiding relationele databases. bestaan uit tabellen.
SQL Inleiding relationele databases DBMS DataBase Management System!hiërarchische databases.!netwerk databases.!relationele databases.!semantische databases.!object oriënted databases. Op dit moment gebruiken
Nadere informatieData Manipulation Language
Data Manipulation Language (DML) In de vorige les hebben we een database structuur gemaakt van 4 tabellen. Hiervoor worden de volgende scripts gebruikt voor de verschillende tabellen: Tabel A ROBERT ELLIS
Nadere informatieDatabank - Basis 1. Inhoud. Computervaardigheden en Programmatie. Hoofdstuk 4 Databank - Basis. Terminologie. Navigeren door een Venster
4. 4. Inhoud rste BAC Toegepaste Biologische Wetenschappen Hoofdstuk 4 Databank Terminologie, Navigeren, Importeren Tabellen Records/Velden manipuleren Queries (Vragen) [Ook in SQL] sorteren filter volgens
Nadere informatieLes 2 Eenvoudige queries
Les 2 Eenvoudige queries XAMP Apache server ( http ) mysql server PHP myadmin IAM SQL oefeningen Database phpmyadmin Import : sql_producten.sql, sql_winkel.sql, sql_festival.sql SAMS SQL in 10 minuten
Nadere informatieSQL & Relationele datamodellen in interactieve media
SQL & Relationele datamodellen in interactieve media HVA-CMD-V1-datamodelleren oefeningen deel 1: SQL 2012-2013 Inhoud Inhoud... 2 Selecties uit een enkelvoudige datatabel... 3 Selecties uit een meerdere
Nadere informatieSQL manipulatietaal. We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database.
SQL manipulatietaal We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: INSERT : toevoegen van gegevens DELETE : verwijderen van gegevens UPDATE : wijzigen van gegevens
Nadere informatieLes S-01: De basisbeginselen van SQL
Les S-01: De basisbeginselen van SQL 1.0 Relationele databases en SQL Een database is een bestand waarin gegevens worden opgeslagen in de vorm van tabellen. Zo kan een huisarts met behulp van een database
Nadere informatieSysteemontwikkeling, Hoofdstuk 4, Tabellen maken in MS Access 2010
4 Tabellen maken in MS Access In dit hoofdstuk starten we met de bouw van ons informatiesysteem met de belangrijkste bouwstenen: de tabellen. 4.1 Starten met MS Access Als je het programma Microsoft Access
Nadere informatieRelationele databases
Systematisch bouwen van informatiesystemen t.b.v. practicumopdracht : Relationele databases Structured Query Language SQL Relationele databases Geautomatiseerde informatiesystemen gebruiken bijna altijd
Nadere informatie2.2 Een tabel ontwerpen
2.2 Een tabel ontwerpen 2.2.1 Gegevens analyse Alvorens de tabellen van een database te kunnen gaan opzetten, dient u eerst te bepalen, welke gegevens daarin moeten worden opgenomen. Bepaal eerst het doel
Nadere informatie[TOETS SQL INLEIDING]
2011 ROC ter AA afdeling T&T Team ICT Toets SQL Inleiding Duur: 100 minuten Hulpmiddelen: Alleen Pen en Papier Er is één voorblad en vijf opgaven pagina s. Normering: Deel I: 14 punten (7x2 Deel II: 10
Nadere informatie2.4.4 LibreOffice Werkblad Mac
2.4.4 LibreOffice Werkblad Mac Deze cursus bestaat uit 4 delen. 1. Werkblad gebruiken voor berekeningen 2. Werkblad gebruiken voor het maken van lijsten 3. Werkblad gebruiken voor een (eenvoudige) boekhouding
Nadere informatieSparse columns in SQL server 2008
Sparse columns in SQL server 2008 Object persistentie eenvoudig gemaakt Bert Dingemans, e-mail : info@dla-os.nl www : http:// 1 Content SPARSE COLUMNS IN SQL SERVER 2008... 1 OBJECT PERSISTENTIE EENVOUDIG
Nadere informatieDigitaal Staatsexamen VWO 2010
Onderdeel I - Meerkeuzevragen Kies het juiste alternatief. Digitaal Staatsexamen VWO 2010 1) Wat is de decimale waarde van het binaire getal 101110? A. 4 B. 23 C. 46 D. 92 2) Bekijk bovenstaand model voor
Nadere informatieGebruikers Handleiding
Gebruikers Handleiding (De SQL module) Versie 2.14 Pagina 2 van 14 Versie 2.14 Inhoudsopgave NGP SQL...5 Het Menu... 6 De instellingen... 7 De database informatie... 9 Het Script... 10 Pagina 3 van 14
Nadere informatieHoofdstuk: 1 Principes van databases
DBSQLF Databases en SQL Hoofdstuk: 1 Principes van databases aant Css: 4 732 blz 9 1.1 Doel ve database - om op het juiste moment op de juiste plaats de juiste gegevens beschikbaar te hebben richten we
Nadere informatieEen functie is een kant en klare formule. Via de knop Som in de groep Bewerken van het tabblad Start kun je een aantal veelgebruikte functies kiezen:
SAMENVATTING HOOFDSTUK 6 De functies Gemiddelde en Afronding Een functie is een kant en klare formule. Via de knop Som in de groep Bewerken van het tabblad Start kun je een aantal veelgebruikte functies
Nadere informatie1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model...
1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model... 4 1.1.4. Wat is SQL?... 6 1.1.5. Verschillende categorieên
Nadere informatieoefeningen TOP2000 antwoorden
oefeningen TOP2000 antwoorden vragen niveau 1 Niveau 1 beslaat de volgende onderwerpen: SELECT, FROM, WHERE, DISTINCT, ORDER BY, LIKE, BETWEEN, IN, wildcards, eenvoudige vergelijkingen, eenvoudige logische
Nadere informatieLes 11 : Basis SQL (deel2).
Les 11 : Basis SQL (deel2). Wat is SQL? SQL gaan we gebruiken voor het raadplegen van de database. We gaan gegevens invoegen in de database, selecteren, aanpassen en verwijderen van de database. Om dit
Nadere informatieISO Query By Example
ISO Query By Example Prof. dr. Paul De Bra Gebaseerd op: Database System Concepts, 5th Ed. QBE waarom nog een query taal? de relationele algebra en SQL geven niet alleen een specificatie van een query-resultaat,
Nadere informatieSQL datadefinitietaal
SQL datadefinitietaal We kunnen er het schema van de database mee bepalen: metadata toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: CREATE : toevoegen van metagegevens DROP : verwijderen
Nadere informatieF. TRUYEN - Informatiekunde QBE. MS Access
F. TRUYEN - Informatiekunde QBE MS Access Maak queries via Design View Voeg de tabellen toe die je wil bevragen Selecteer de gewenste kolommen Bekijk resultaat met View knop Bekijk SQL code SQL venster
Nadere informatieDatabases en SQL Foundation (DBSQLF.NL)
Databases en SQL Foundation (DBSQLF.NL) EXIN Hét exameninstituut voor ICT ers Janssoenborch - Hoog Catharijne Godebaldkwartier 365 3511 DT Utrecht Postbus 19147 3501 DC Utrecht Nederland T +31 30 234 48
Nadere informatiePROGRAMMA 2011-2012. Vak: informatica..
Vak: informatica.. Laag: Havo-. PROGRAMMA 2011-2012 week leerstof dagen toets overig 34-26.08 zomervakantie Bespreking PTA-404 Deze week: uitreiking van de Praktische Opdracht Programmeren Herhaling theorie
Nadere informatieSorteren, groeperen en totaliseren
6 Sorteren, groeperen en totaliseren 6.1 Inleiding Een rapport maken begint met het selecteren van de tabellen en het plaatsen van de velden die u in uw rapport wilt afdrukken. Vervolgens sorteert, groepeert
Nadere informatieLes S-01: De basisbeginselen van SQL
Les S-01: De basisbeginselen van SQL 1.0 Relationele databases en SQL Een database is een bestand waarin gegevens worden opgeslagen in de vorm van tabellen. Zo kan een huisarts met behulp van een database
Nadere informatieData Definition Language
Data Definition Language We gaan hier dezelfde database gebruiken als in de vorige les. Nu gaan we deze echter maken met behulp van DDL gedeelte van SQL. Om in het SQL deel van Microsoft Access te komen
Nadere informatieInhoudsopgave. Theorie... 14 Praktijk... 14. Gegevens uit Database halen... 13 DML commando s... 14
SQL 2013 Inhoudsopgave Inhoudsopgave... 2 SQL begrippen... 3 Maken Database... 4 Rechten voor een Database... 4 User aanmaken... 5 Rol Toekennen aan een user... 5 Backup... 6 Theorie... 6 In SQL... 6 SQL
Nadere informatieNHibernate als ORM oplossing
NHibernate als ORM oplossing Weg met de SQL Queries Wat is ORM? ORM staat in dit geval voor Object Relational Mapping, niet te verwarren met Object Role Modeling. ORM vertaalt een objectmodel naar een
Nadere informatieAntwoorden Informatica Hoofdstuk 7
Antwoorden Informatica Hoofdstuk 7 Antwoorden door een scholier 2667 woorden 8 september 2016 5,6 3 keer beoordeeld Vak Methode Informatica Enigma 6. Om snel het persoon op te zoeken en weten wie het persoon
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica
TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Extra Tentamen Databases 1, 2M400, 8 oktober 2003. Alle uitwerkingen van de opgaven moeten worden ingevuld in de daarvoor bestemde vrije
Nadere informatieStructured Query Language
Structured Query Language SQL = internationale standaardtaal. Origineel IBM. SQL92 (SQL2), SQL99 (SQL3), SQL:2003, SQL:2007 en SQL:2008. Vele dialecten. In wat volgt beperken we ons tot wat tot de kern
Nadere informatieTentamen Databases. 18 december 2002. 09:00-12:00, Educatorium Gamma
Dit tentamen is in elektronische vorm beschikbaar gemaakt door de TBC van A Eskwadraat. A Eskwadraat kan niet aansprakelijk worden gesteld voor de gevolgen van eventuele fouten in dit tentamen. Tentamen
Nadere informatieExcel Controller. Handleiding Excel Controller Wizard
Excel Controller Handleiding Excel Controller Wizard 1 Inhoud Inleiding... 3 Eigen SQL... 3 Stap 1 Eigen SQL... 3 Stap 2 Testen SQL... 8 Stap 3 Wizard... 11 Stap 4 Parameters... 13 Voorbeeld Eigen Parameter...
Nadere informatie8. De invoer van gegevens
8. De invoer van gegevens 8.1. Inleiding Voor het invoeren van gegevens kan het DML-statement INSERT INTO worden gebruikt. Om dit statement correct te kunnen gebruiken, moet je wel antwoord weten op de
Nadere informatieE-MAILS VERZENDEN MET AFDRUK SAMENVOEGEN
E-MAILS VERZENDEN MET AFDRUK SAMENVOEGEN Met E-mail samenvoegen voor Word en Outlook kunt u o.a. een brochure of nieuwsbrief maken en deze per e-mail verzenden naar uw Outlook-lijst met contactpersonen
Nadere informatieAntwoorden door een scholier 1990 woorden 3 maart keer beoordeeld. Informatica INFORMATICA HOOFDSTUK 4
Antwoorden door een scholier 1990 woorden 3 maart 2006 6 23 keer beoordeeld Vak Methode Informatica Turing INFORMATICA HOOFDSTUK 4 1a database management system 1b database 1c database system 1d geen 2a
Nadere informatieISO SQL: Structured Query Language
ISO SQL: Structured Query Language Prof. dr. Paul De Bra Gebaseerd op: Database System Concepts, 5th Ed. SQL: query taal met woorden doel: intuitieve query taal gebruikt Engelse woorden: select, from,
Nadere informatieOffice LibreOffice Werkblad gebruiken
office_lo_werkblad_gebruiken/05-03-15/pag 1/6 Office LibreOffice Werkblad gebruiken Deze les bestaat uit 4 delen. 1. Werkblad gebruiken voor berekeningen 2. Werkblad gebruiken voor het maken van lijsten
Nadere informatie6. Het maken van een database
6. Het maken van een database 6.1. Inleiding In hoofdstuk 5 heb je de oefendatabase gemaakt doormiddel van een script. In dit hoofdstuk ga je zelf een database maken en deze vullen met tabellen. Hiervoor
Nadere informatieVersie: 1.1 Datum: 24-11-2014. Handleiding Portal HostedXL
Versie: 1.1 Datum: 24-11-2014 Handleiding Portal HostedXL Inhoudsopgave 1 INLEIDING... 3 2 INLOGGEN... 4 2.1 GEBRUIKERS... 6 2.1.1 Nieuwe gebruiker aanmaken... 6 2.1.2 Bestaande gebruiker aanpassen...
Nadere informatie9 H. Flits Zwanenveld 89-90 Nijmegen Jeugd1 10 L. Willemsen Kasteel 4 Wychen Jeugd1 12 M.E.P. Graag Broerdijk 234 Nijmegen Heren 12/8/89 19/8/89 36
0 Inleiding SQL: Structured Query Language 0. Informatiesystemen, gegevensbanken en tabellen Bij het automatiseren van gegevensbanken maakt men tegenwoordig bijna altijd gebruik van gegevensbank-beheerssystemen
Nadere informatie1. * Database worden vaak gebruikt in Client-Server architectuur.
Naam Studentnummer Klas Herkansing [ ] ja, nee [ ], zoja uit welk jaar? kernbegrippen relationele database Minimaal drie van de vijf vragen goed beantwoorden. 1. * Database worden vaak gebruikt in Client-Server
Nadere informatieInfo-books. Toegepaste Informatica. Handleiding. Deel 40c : Gegevensbeheer en algoritmen in Access. HA40c. Jos Gils Erik Goossens
Info-books HA40c Toegepaste Informatica Handleiding Deel 40c : Gegevensbeheer en algoritmen in Access Jos Gils Erik Goossens Veldlengte Het maximale aantal tekens dat in een veld kan ingevoerd worden.
Nadere informatieSQL: query taal met. woorden. ISO SQL: Structured Query Language. de SQL basis query structuur. voorbeeld: doel: intuitieve query taal
SQL: query taal met woorden ISO SQL: Structured Query Language Prof. dr. Paul De Bra Gebaseerd op: Database System Concepts, 5th Ed. doel: intuitieve query taal gebruikt Engelse woorden: select, from,
Nadere informatieKies File>New>Blank Page>PHP. Je kunt eventueel nog een stylesheet koppelen. Definieer nu eerst een site! Dat betekent: Site>New Site
Kies File>New>Blank Page>PHP Je kunt eventueel nog een stylesheet koppelen. Definieer nu eerst een site! Dat betekent: Site>New Site Geef de site een passende naam. Kies ook de juiste map voor de webdocumenten.
Nadere informatieComputervaardigheden. Universiteit Antwerpen. Computervaardigheden en Programmatie. Grafieken en Rapporten 1. Inhoud. Anatomie van een databank
Inhoud Computervaardigheden Hoofdstuk 5 Databanken (Let op: dit is enkel voor studenten Bio-Ingenieur.) Terminologie Data importeren Basis queries Allerhande Joins Doe dit. Aandachtspunt! Wat gebeurt hier?
Nadere informatieInformatie Voor algemene vragen/opmerkingen omtrent de inhoud van deze site kunt u bellen of e-mailen met: Cargo Data Systems BV
Rapportgenerator Gebruikershandleiding Versie 1.0 Disclaimer Niets uit deze uitgave mag worden verveelvoudigd en/of openbaar worden gemaakt, op welke wijze dan ook, zonder voorafgaande schriftelijke toestemming
Nadere informatieVan een ER-diagram naar een database specificatie in SQL
Van een ER-diagram naar een database specificatie in SQL Huub de Beer Eindhoven, 4 juni 2011 Inhoudsopgave 1 Inleiding 1 2 Van een ER-diagram naar het relationele model 1 3 Van relationeel model naar SQL
Nadere informatieProject PiggyBank 2014
Project PiggyBank 2014 Auteur Laatst gewijzigd Licentie Webadres Bert Bredewold 23 April 2014 CC Naamsvermelding 3.0 Nederland licentie http://maken.wikiwijs.nl/50661 Dit lesmateriaal is gemaakt met Wikiwijsleermiddelenplein.
Nadere informatieINLOGGEN Vul gebruikersnaam en wachtwoord in, en klik op log in.
Snel starten met Testweb PSL als coördinator WAAR? Je vindt Testweb PSL op de volgende website: www.testweb.bsl.nl Je kunt inloggen in het groene vak aan de rechterkant: Direct inloggen Testweb PSL INLOGGEN
Nadere informatieLedenlijsten + etiketten maken
Ledenlijsten + etiketten maken Eerst wordt uitgelegd hoe je een ledenlijst (van alle clubleden of leden per lesjaar) kan opvragen en bewerken en nadien hoe je met deze lijst etiketten kan maken. De ledenlijst
Nadere informatieCOMPUTERWOORDEN.NL SQL - basis
Inhoudsopgave... 1 Introductie: SQL... 7 SQL... 7 SQL geschiedenis...7 SQL dialecten...7 Basis SQL-commando's...8 CREATE TABLE... 8... 8... 8 Datatype...8 Grootte...10 Veldtype... 10 DELETE FROM... 10...
Nadere informatieInleiding tot de catalogus. 10mm. foto
Inleiding tot de catalogus 10mm foto Inhoud Registreren... 4 Je gezinsleden aan je profiel koppelen... 8 Je gebruikersprofiel... 9 Verlengen... 11 Materialen opzoeken en reserveren... 12 Registreren Om
Nadere informatieHandleiding LVS-bestand
Tabblad Niveaus 1. Leerlingen(groepen) invoeren. 2. Nieuwe leerling toevoegen. 3. Leerlingen verwijderen. 4. Behaalde niveaus invoeren. Tabblad Gemiddelden 1. Waarom dit tabblad? 2. Opmerking toevoegen.
Nadere informatie4 Tabellen maken in MS Access In dit hoofdstuk starten we met de bouw van ons informatiesysteem met de belangrijkste bouwstenen: de tabellen.
4 Tabellen maken in MS Access In dit hoofdstuk starten we met de bouw van ons informatiesysteem met de belangrijkste bouwstenen: de tabellen. 4.1 Starten met MS Access Als je het programma Microsoft Access
Nadere informatieModerne Naamkunde - Access practicum <David Onland en Gerrit Bloothooft juni 2008> 1. Databases
Moderne Naamkunde - Access practicum 1 Databases Wat zijn databases? Databases worden gebruikt om grote hoeveelheden gegevens te beheren en om te zetten in
Nadere informatieEen introductie tot gegevensbanken
Een introductie tot gegevensbanken Kris Luyten Tom Van Laerhoven Expertisecentrum Digitale Media Limburgs Universitair Centrum Wetenschapsdagen 2002 1. Overzicht Wat zijn gegevensbanken? Bestanden versus
Nadere informatiePROGRAMMA 2011-2012. Vak: Informatica..
Vak: Informatica.. Laag: vwo-. PROGRAMMA 2011-2012 week leerstof dagen toets overig 34-26.08 zomervakantie Bespreking PTA-404 1. Deze week: uitreiking van de Praktische Opdracht Programmeren Herhaling
Nadere informatie6.8 Lijsten: oefeningen
6.8 Lijsten: oefeningen Opgaven 44.: Records zoeken Open het document "Autokosten". Klik in de lijst. Kies de opdracht 'Data - Formulier' [Data - Form]. Klik de knop 'Criteria' [Criteria]. Vul als zoekcriterium
Nadere informatieLeerjaar 1/2 ICT-Academie. Niveau 4. Applicatie ontwikkeling
Databases SQL Leerjaar 1/2 ICT-Academie Niveau 4 Applicatie ontwikkeling Auteur: R. Meijerink Datum: Januari 2013 0. Inleiding Databases / SQL In deze lessen wordt je geleerd databases te bouwen in SQL-code.
Nadere informatie1. Databanken. Wat is een databank? Verschillende opslagmethodes
1. Databanken Wat is een databank? Verschillende opslagmethodes Tekst bestanden Spreadsheet Relationele gegevensbanken Relationeel model De gestandaardiseerde opvraagtaal SQL Beheer van een mysql databank
Nadere informatieInformatie verwerking en databases... 4. RDBMS en tabellen... 8 SQL SELECT... 8 SQL WHERE... 10 SQL INSERT... 14 SQL UPDATE... 17 SQL DELETE...
Databases+SQL 1 Inhoud Informatie verwerking en databases... 4 RDBMS en tabellen... 8 SQL SELECT... 8 SQL WHERE... 10 SQL INSERT... 14 SQL UPDATE... 17 SQL DELETE... 18 SQL ORDER BY... 19 SQL Aggregate
Nadere informatieHandleiding CMS VOORKANT
Handleiding CMS VOORKANT Inhoudsopgave Pagina 1. Toegang tot het CMS... 3 2. Artikel toevoegen... 4 3. Artikel bewerken... 5 4. Artikel kopiëren of verwijderen... 6 5. Afbeelding, link of tabel invoegen...
Nadere informatieTechnische nota AbiFire Rapporten maken via ODBC
Technische nota AbiFire Rapporten maken via ODBC Laatste revisie: 23 januari 2018 Inhoudsopgave 1 Inleiding... 2 2 Systeeminstellingen in AbiFire... 3 2.1 Aanmaken extern profiel... 3 2.2 Toewijzing extern
Nadere informatieMacro s. 4.2 Een macro maken
4.2 Een macro maken Een macro is een reeks van commando s die u kunt maken en die een programma uitvoeren. Wanneer u de macro in zijn geheel uitvoert, dan worden de acties opeenvolgend uitgevoerd. Elk
Nadere informatieGekoppelde tabellen: de JOIN
Gekoppelde tabellen: de JOIN Huub de Beer Eindhoven, 4 juni 2011 Koppelingstabellen en SQL: eenvoudig voorbeeld: leerlingen en klassen ll_nr woonplaats mentor Leerling zit in klas Klas klascode geb_jaar
Nadere informatieU ziet de progressie van de download aan de groene blokjes in het balkje helemaal onder aan de pagina.
Gegevens exporteren en bewerken vanuit GRIEL Stap 1. Selecteer de juiste gegevens en download deze 1. Stel het datumfilter in op de gewenste periode. Druk op ververs. 2. Maak met behulp van het filter
Nadere informatieHandleiding Afdrukken samenvoegen
Handleiding Afdrukken samenvoegen Versie: 1.0 Afdrukken Samenvoegen Datum: 17-07-2013 Brieven afdrukken met afdruk samenvoegen U gebruikt Afdruk samenvoegen wanneer u een reeks documenten maakt, bijvoorbeeld
Nadere informatieSQL / Systeemanalyse
SQL / Systeemanalyse Wie ben ik Hans de Wit 44 jaar HBO BI in deeltijd gedaan Sinds 2008 werkzaam met BI / DWH med.hro.nl/wihan SQL De gegevens in een database vormen de grondstof voor informatie De informatie
Nadere informatieHet omzetten van een ER-diagram naar SQL
Het omzetten van een ER-diagram naar SQL Huub de Beer Eindhoven, 4 juni 2011 Omzetting ER-diagram naar SQL in twee stappen 1: ER-Diagram relationeel model Onderwerp van hoofdstuk 3 Entiteittype relatie,
Nadere informatievoorbeeldexamen I-Tracks Databases and SQL Foundation Voorbeeldexamen DBSQLF Uitgave juni 2006
voorbeeldexamen Databases and SQL Foundation (DBSQLF) I-Tracks Databases and SQL Foundation Voorbeeldexamen DBSQLF Uitgave juni 2006 inhoud 3 inleiding 4 voorbeeldexamen 21 antwoordindicatie 44 beoordeling
Nadere informatiedatabases & SQL - antwoorden
informatica databases & SQL - antwoorden Op dit lesmateriaal is een Creative Commons licentie van toepassing. 2010 Remie Woudt remie.woudt@gmail.com 2013 François Vonk (XAMP vervangen door USBWebserver
Nadere informatie7. Het selecteren van gegevens
7. Het selecteren van gegevens 7.1. Inleiding Het doel van databases is het ontsluiten van gegevens. Een database wordt gebruikt om gegevens in op te slaan en te lezen. In dit hoofdstuk ga je door gebruik
Nadere informatieNa bestudering van dit hoofdstuk, moet je tot het volgende in staat zijn:
5. De oefendatabase 5.1. Inleiding In de volgende hoofdstukken ga je oefenen / werken met SQL. Om te kunnen oefenen heb je natuurlijk wel een database nodig. In dit hoofdstuk wordt besproken hoe je deze
Nadere informatie