Databanken
TOEPASSINGSSOFTWARE 2
Voorbeelden databanken
Voorbeelden databanken
◦ ISP-dossier
◦ Rijksregister
◦ Voordeelkaarten supermarkt
◦ Ledenadministratie
◦ Facebook
◦ Ebay
◦ Ticketverkoop Tomorrowland
◦ ITunes
◦ …
Wat is een databank?
= elektronische fichebak
= geordende verzameling van bij elkaar horende gegevens
= database
= gegevensbank
MS Access
Onderdeel van Microsoft Office
Extensie
◦ MDB
◦ ACCDB (vanaf office 2007)
Schermonderdelen
Terminologie
Databank
geordende verzameling van bij elkaar horende gegevens (= database,
gegevensbank)
Record
alle gegevens van één individu / onderwerp
Veld
soort van gegevens dat u bijhoudt
Terminologie
Tabel
Gegevens opslaan
Query
Gegevens zoeken en sorteren
Formulier
Gegevens invoeren en/of wijzigen
Rapport
Gegevens af te drukken
Opdracht
Een sportclub wil van zijn leden de persoonsgegeven opslaan in een
databank.
Welke gegevens moeten ze opslaan?
Inventariseren
◦ Stap 1 in databaseontwerp
◦ Nog niet in Access  op papier
◦ Opslaan in 1 of 2 velden?
◦ Voor- en familienaam
◦ Adres en huisnummer
◦ Postcode en gemeente
◦ Leeftijd of geboortedatum opslaan?
◦ Subtotaal + btw optellen?
Regels naamgeving
Regels naamgeving tabel/velden:
◦ Maximaal 64 karakters
◦ Alle karakters, uitgezonderd
◦ Punt (.)
◦ Uitroepingsteken (!)
◦ Vierkante haken ([ ])
◦ Geen spatie(s)
Vb. StudentID, Woonplaats_Klant, TelWerk
Tabel opstellen
Voornaam
Familienaam
Adres
Postcode
Gemeente
Geboortedatum
Geslacht
GSM
Telefoon
E-mail
T-shirt
Primaire sleutel
Probleem: Wat als 2 sporters dezelfde naam hebben?
Wat als 2 studenten dezelfde naam hebben?
Oplossing: primaire sleutel
= veld dat elke record van een tabel op een unieke wijze identificeert
Vb. Lidnummer, studentennummer, abonneenummer,…
Verplicht in iedere tabel
Noodzakelijk voor relaties
Aangeduid met een
TIP: voeg aan de veldnaam ID toe om primaire sleutels snel te
herkennen
Tabel opstellen
Voeg het veld Lidnummer toe als Primaire sleutel
Gegevenstypes
◦ Tekst: max. 255 karakters, geen berekeningen
◦ Memo: max. 63999 karakters, vaak optioneel veld
◦ Numeriek: numerieke waarde, berekeningen mogelijk
◦ Datum/tijd: datum of tijd, vergelijking data mogelijk
◦ Valuta: valutawaarden
◦ Autonummering: automatische toewijzing opeenvolgend getal
Gegevenstypes
◦ Ja/nee: 2 opties vb. man/vrouw
◦ OLE-object: audio, afbeelding, video, …
◦ Hyperlink: link naar website, email, bestand
◦ Bijlage: bestanden toevoegen
◦ Berekend: uitkomst van berekening velden
◦ Wizard opzoeken: keuzelijst maken
Veldeigenschappen
◦ Veldlengte: aantal tekens of nauwkeurigheid numerieke waarden
◦ Notatie: hoe wordt waarde weergegeven of afgedrukt
vb. 61310126985517 IBAN BE61 3101 2698 5517
◦ Invoermasker: hoe worden de gegevens ingevoerd?
vb. IBAN BE__ ____ ____ ____
◦ Bijschrift: alternatief voor veldnaam
◦ Standaardwaarde
◦ Validatieregel: controle van invoer
◦ Vereist
◦ Lengte nul: is een leeg veld toegelaten?
Opmaak notatie
Symbool Betekenis
@ Een teken vereist, lege plaatsen = spatie
& Geen teken vereist
< of > Alle karakters in kleine letters of hoofdletters
“ “ Tekst tussen dubbele aanhalingstekens = letterlijke weergave
* Beschikbare ruimte opvullen met teken na *
[Kleur] Instellen tekstkleur
0 Cijfer of 0
# Cijfer of niets
% Waarde x 100 en %-teken
Opmaak invoermasker
Symbool Betekenis
0 Verplichte invoer van cijfer
9 Niet verplichte invoer cijfer
# Niet verplichte invoer spatie, cijfer of plus- of minteken
L Verplichte invoer van letter
? Niet verplichte invoer letter
A Verplichte invoer van cijfer of letter
A Niet verplichte invoer cijfer of letter
& Verplichte invoer willekeurig teken
C Niet verplichte invoer willekeurig teken
< of > Volgende tekens omgezet in kleine letters of hoofdletters
 Volgend teken wordt letterlijk weergegeven
“ “ Tekst wordt letterlijk weergegeven
Opmaak validatieregel
Symbool Betekenis
= Invoer moet gelijk zijn aan
< of > Invoer komt voor of na de waarde (tekst, datum, getal)
>= of <= Invoer komt voor of na de waarde of is gelijk (tekst, datum,
getal)
<> Invoer verschilt
Between … and … Invoer ligt tussen onder- en bovengrens
In(“A”;”B”) Invoer moet A, a, B of b zijn
Like “A*” Invoer start met A
? = willekeurig teken
* =geen of meerdere tekens
# = willekeurig cijfer
And of Or Invoer moet voldoen aan 1 (or) of 2(and) voorwaarden
Not Omgekeerde voorwaarde
Stel in
Index
Voordeel: sorteren en opzoeken versnellen
Nadeel: Invoeren en bewerken van veld vertraagd
Invoeren gegevens
Enkele tips
◦ Gebruik zo weinig mogelijk afkortingen  gevolgen voor sorteren
◦ Typ gegevens correct in  gevolgen bij maken rapporten
◦ Wees consequent bij invoer
Opdracht
Een sportclub wil naast persoonsgegeven, ook de info van hun sporten
opslaan in de databank.
Welke gegevens moeten ze opslaan?
◦ Brainstorm op papier
Hoe opslaan?
Hoeveel keer aanpassen?
◦ Badminton -12 gaat door op zondag
◦ Merel Van Der Elst verhuist naar Gent
◦ Inschrijvingsgeld gaat met €5 omhoog
Opslaan in:
◦ Nieuwe tabel?
◦ Aanvullen bij bestaande tabel?
Noodzaak meerdere tabellen
• Dubbele waarden
• Lid met 2 sporten
• Sport met meerdere leden
• Nieuw lid moet direct een sport hebben
• Schrijft een lid uit, heb je geen gegevens meer
 Meerdere tabellen nodig
Sporttakken
Importeer de spreadsheet met sporttakken.
Kies het juiste gegevenstype voor ieder veld.
Zorg voor volgende instellingen:
◦ Sporttaknr is autonummering
◦ Leeftijdscategorie is keuzelijst Competitief is selectievakje
◦ Lidgeld wordt weergegeven as valuta
◦ Tijd wordt weergegeven als uu:mm
◦ Weekdag is keuzelijst (alle weekdagen mogelijk)
Relaties tussen tabellen
Leden en sport koppelen  waarvoor zijn ze ingeschreven?
2 types relaties mogelijk:
◦ Één-op-één relatie
ieder lid heeft max. 1 inschrijving
◦ Één-op-veel relatie
ieder lid kan meerdere inschrijvingen hebben
Referentiële integriteit  betrouwbaarheid verhogen
Opdracht
Zorg voor de correcte relaties tussen de tabellen.
Opdracht
De sportclub wil wat meer info over de inschrijving opslaan in de
databank.
Volgende gegevens willen ze opslaan:
◦ Inschrijvingsdatum
◦ Betaald?
Hoe pakken we dit aan?
Opdracht
Zorg voor de correcte relaties tussen de tabellen.
Oefeningen boek
Maak volgende oefening uit het handboek:
◦ Oefening 4 (kiezen gegevenstype)
◦ Oefening 5
◦ Oefening 13
Opdracht
Maak een databaseontwerp voor de studentenadministratie van Odisee
voor het registreren van de examenresultaten. Met de database willen
ze volgende handelingen uitvoeren:
◦ Persoonlijke gegevens van studenten bijhouden.
◦ Behaalde punten voor de verschillende OPO’s registreren.
Volgende velden moeten opgenomen worden:
AantalSTP
DatumExamen
Docent
Examenperiode
Familienaam
Geboortedatum
Gemeente
Geslacht
Notities
OPOnaam
Postcode
Score
Straat
Telefoon
Voornaam
Oplossing
Studenten
StudentID
Voornaam
Familienaam
Straat
Gemeente
Postcode
Telefoon
Geboortedatum
Geslacht
Notities
Vakken
OPOID
OPOnaam
AantalSTP
Docent
Uitslag
UitslagID
StudentID
OPOID
Score
Examenperiode
DatumExamen
Oplossing 2
Studenten
StudentID
Voornaam
Familienaam
Straat
Gemeente
Postcode
Telefoon
Geboortedatum
Geslacht
Notities
Vakken
OPOID
OPOnaam
AantalSTP
DocentID
Uitslag
UitslagID
StudentID
OPOID
Score
Examenperiode
DatumExamen
Docenten
DocentID
Voornaam
Familienaam
Straat
Gemeente
Postcode
Telefoon
Geboortedatum
Geslacht
Diploma
Notities
Extra oefeningen boek
Maak volgende oefeningen uit het handboek:
◦ 15
Query’s
HOOFDSTUK 2
Wat is een query?
◦ Uitfilteren van informatie
◦ Gebruikt actuele gegevens uit tabel
◦ Zoekdefinitie wordt opgeslagen, niet gefilterde tabel
◦ Query bepaalt:
◦ Welke gegevens je wil zien
◦ Volgorde van de gegevens
◦ Criteria waaraan de gegevens moeten voldoen
◦ Aanpassingen in record  aanpassing in onderliggende tabel
Voordelen query’s
◦ Steeds meest actuele informatie
◦ Snel berekende gegevens opstellen, geen extra veld nodig
◦ Gegevens uit verschillende gerelateerde tabellen
◦ Veelgebruikte filters onmiddellijk ingesteld
Enkelvoudig selectiecriterium
Query met 1 voorwaarde
◦ Vb. Alle leden uit Gent
Meervoudig selectiecriterium
Query met meerdere voorwaarden
◦ EN-voorwaarde
◦ OF-voorwaarde
◦ OF-voorwaarde met EN-voorwaarde
Extra instellingen
Kolomtotalen: totaal per kolom vb. aantal leden
Topwaarden: aantal records dat grootste of kleinste waarde heeft
Unieke waarden: Iedere waarde komt maar één keer voor
Wizard query’s
Via wizard query opstellen  eenvoudiger via queryontwerp
Vooral voor ‘speciale’ query’s
◦ Dubbele records zoeken
◦ Niet gekoppelde records zoeken

Databanken

Editor's Notes

  • #3 Welke databanken heb je vandaag Bron: http://datanews.knack.be/ict/nieuws/facebook-plaatst-al-uw-foto-s-in-doorzoekbare-databank/article-normal-292589.html gebruikt?
  • #4 Welke databanken heb je vandaag Bron: http://datanews.knack.be/ict/nieuws/facebook-plaatst-al-uw-foto-s-in-doorzoekbare-databank/article-normal-292589.html gebruikt?
  • #15 Welk veld zou je een primaire sleutel geven? Vergelijking met studentennummer op hogeschool