You are on page 1of 38

ACCESS 2003

Module 5 ECDL
Access 2003 Inhoud

Inhoud

1 Introductie Access ____________________________________________________ 1

2 Aan de slag met Access ________________________________________________ 3

3 Het gebruik van een database ___________________________________________ 5

4 Het afleiden en zoeken van informatie ___________________________________ 15

5 De structuur van een tabel _____________________________________________ 31

6 De opbouw van een database ___________________________________________ 37

7 Het maken van query’s _______________________________________________ 55

8 Het veranderen van informatie _________________________________________ 85

9 Het maken van een index ______________________________________________ 93

10 Objecten __________________________________________________________ 109

11 Formulieren _______________________________________________________ 115

12 Rapporten _________________________________________________________ 127

13 Relationele database ________________________________________________ 149

Case _____________________________________________________________ 170

Index ____________________________________________________________ 174


Access 2003 Inleiding 1

1 Wat is een Access-database?

Een database is een verzameling gegevens die betrekking heeft op een bepaald
onderwerp of een bepaald doel. Het helpt ons informatie zodanig te structureren dat
deze gemakkelijker te hanteren is.

Bijvoorbeeld: - ledenbestand
- artikelbestand
- klantenbestand
- telefoonbestand
- leveranciersbestand

Een database management system (DBMS) is een systeem dat informatie in een
database opslaat en eruit ophaalt. Access is een relationele database management
system (RDBMS), een systeem dat informatie opslaat en ophaalt aan de hand van
relaties die we definiëren. In de voorbeelden hierboven kunnen we bijvoorbeeld een
relatie leggen tussen de artikeltabel en de leverancierstabel.

Van de artikeltabel kunnen we bijv. de volgende gegevens bijhouden:


- artikelnummer
- omschrijving
- prijs
- voorraad
- leveranciersnummer

Van de leverancierstabel kunnen we bijv. de volgende gegevens bijhouden:


- leveranciersnummer
- bedrijfsnaam
- adres
- plaats
- contactpersoon
- telefoonnummer

Alle artikelen bij elkaar noemen we een tabel;


Alle gegevens van één artikel noemen we een record;
Elk gegeven van een artikelgegeven noemen we een veld.

Een tabel bestaat dus uit één of meerdere records (artikelen). Een record (artikel) bevat
één of meerdere velden (gegevens van één artikel).

1
1 Inleiding Access 2003

De artikeltabel zou de volgende informatie kunnen bevatten;

De leverancierstabel zou er als volgt uit kunnen zien;

Tussen beide tabellen ligt een relatie. Deze is te vinden in het veld Leverancierscode
afgekort als Levercode. De relatie kunnen we gebruiken in Access. Zo kunnen we
deze relatie vastleggen en met Access overzichten laten maken waarbij de gegevens
uit de tabellen, waartussen we een relatie hebben gelegd, worden gecombineerd.

Vraag: Welke artikelen leveren de verschillende leveranciers en wat is de prijs van het
artikel?

Antwoord:

Vraag: Welke leverancier levert de fietspomp, wat is de voorraad en welk


telefoonnummer moeten we bellen om te bestellen?

Antwoord:

Op deze manier kunnen we zeer veel informatie uit het DBMS halen.

2
Access 2003 Aan de slag met Access 2

2 Aan de slag met Access

Access kunnen we starten vanuit de werkbalk, een snelkoppeling of via het startmenu.

In dit lesmateriaal gaan we het programma starten vanuit de startknop .

1 Start Access via de startknop

Access wordt geopend en het volgende dialoogvenster komt op het beeldscherm.

Indien niet alle updates juist geïnstalleerd zijn kan er een foutmelding verschijnen met
betrekking tot het installeren van Microsoft Jet Service Pack. Voor de werking moet
hier gekozen worden voor Ja.

3
Access 2003 Het gebruik van een database 3

3 Het gebruik van een database

Als eerste zullen we een bestaande database gaan bekijken en hiermee een aantal
basishandelingen verrichten. In een van de volgende hoofdstukken gaan we een
database bouwen.

1 Klik in de databasewerkbalk op de knop Openen

Op het scherm verschijnt een dialoogvenster, waarmee we de mogelijkheid hebben om


het juiste station aan te geven met, indien nodig, het pad en het juiste bestand. De
volgende handelingen moeten we hiervoor verrichten.

2 Klik op het keuzelijstsymbool Zoeken in: om het juiste station aan te geven

Op het scherm verschijnt een keuzelijst met drives.

5
Access 2003 Het gebruik van een database 3

De muisaanwijzer verandert in een open wit kruis , waarmee we een heel veld
kunnen selecteren en daarna aanpassen.

11 Klik op het ADRES-veld van 245, Dirk-Jan Jongmans, zodat het veld wordt
geselecteerd

Het adresveld wordt dan geheel geselecteerd.

Voor het record staat de status van het record. wil zeggen dat dit record actief is.

12 Typ in: Jagerweg 25 en druk op [Enter]

Tijdens het bewerken van het record wordt de status weergegeven in de vorm van een

potlood

Na de bewerking van het adresveld wordt het volgende veld (het postcode veld)
geselecteerd.

13 Typ in: 5555 AD

Vervolgens gaan we een nieuwe klant toevoegen. Hiervoor moeten we een opdracht
geven.

14 Klik in de databasewerkbalk op de knop Nieuwe record of in de statusbalk op de


knop Nieuwe record

We zien dat record 47 is klaargezet. De invoegpositie staat nu onderaan in de tabel in


dit nieuwe lege record. Hier kunnen we de gegevens van de nieuwe klant gaan
invullen. De gegevens zijn: 770, Peter Smeets, Hertenweg 20, 4062 DD, Roermond, L,
0475-323456

15 Typ de volgende gegevens in:


770 [Enter]
Peter [Enter]
Smeets [Enter]
Hertenweg 20 [Enter]
4062 DD [Enter]
Roermond [Enter]
L [Enter]
0475-323456 [Enter]

11
Access 2003 Het afleiden en zoeken van informatie 4

4 Het afleiden en zoeken van informatie

Gegevens die we verzameld hebben willen we vaak in een bepaalde volgorde zien.
Vaak zijn we niet geïnteresseerd in alle gegevens, maar een aantal velden van een
aantal records. In dit hoofdstuk zullen we informatie gaan opvragen uit een tabel.

1 Klik in de databasewerkbalk op de knop Openen


2 Dubbelklik op Reizen in de map Access om de database te openen
3 Klik op de knop Openen om de database te openen
4 Dubbelklik op de tabel Boeking om de tabel te openen

Op ons scherm verschijnt de volgende tabel:

Uit deze tabel gaan we informatie ophalen. Als eerste willen we de gegevens op
volgorde van vertrekdatum. Hiervoor moeten we eerst de vertrekkolom selecteren.

5 Klik in de kolom VERTREK om deze kolom te activeren

We gaan de records weergeven op vertrekdatum. De volgorde kan oplopend of


aflopend zijn. We kiezen voor oplopend.

6 Klik in de databasewerkbalk op de knop Oplopend sorteren zodat alle records


volgens de geselecteerde kolom worden gesorteerd

15
4 Het afleiden en zoeken van informatie Access 2003

We zien dat alle records nu op volgorde van vertrekdatum staan.

De boekingen van augustus kunnen alle verwijderd worden. Daarvoor gaan we deze
selecteren en daarna verwijderen.

We gaan de eerste 6 records (van augustus) selecteren. Hieronder staat aangegeven


wat we gaan doen. We selecteren met de muis op de statusknop het eerste record en
slepen de muis naar het zesde record. Hierbij moeten we de muisknop vasthouden.

7 Sleep de muis van het eerste naar het zesde record zoals hiervoor te zien is

De 6 records zijn nu geselecteerd.

16
Access 2003 Het afleiden en zoeken van informatie 4

8 Druk op [Delete]

Op de achtergrond kunnen we al zien dat de 6 records van het scherm zijn verdwenen.

17
4 Het afleiden en zoeken van informatie Access 2003

9 Klik op de knop Ja om deze definitief te verwijderen

Hiermee zijn de 6 geselecteerde records definitief verwijderd.

We kunnen op twee manieren een aangepaste weergave van gegevens in tabellen


maken: een query of een filter voor een tabel. Een filter is eigenlijk een eenvoudige
query die alleen op een geopende tabel kan worden toegepast. Een filter is het meest
geschikt voor een tijdelijke wijziging in de samenstelling van de verzameling records
die we bekijken. Als we echter weten dat we een bepaald deel van de records
regelmatig in een bepaalde volgorde willen bekijken, kunnen we beter een query
maken en opslaan. Een filter moeten we steeds weer opnieuw maken. Hierbij moeten
we goed in de gaten houden dat de tabel de basis is. Hierin staan alle gegevens en
hierin worden de veranderingen doorgevoerd. Een filter en een query zijn 2
verschillende manieren om gedeeltes van een tabel te bekijken.

In de databasewerkbalk zien we een drietal knoppen die we kunnen gebruiken voor het
maken van een filter.

Selectiefilter

Formulierfilter

Filter toepassen / Filter verwijderen

Met behulp van de knop Selectiefilter kunnen we van de selectie alle records uit
de tabel filteren die dezelfde waarde bezitten.

Met behulp van de knop Formulierfilter kunnen we een formulier oproepen


waarmee we exact kunnen aangeven waaraan de filter moet voldoen. Hierbij hebben
we meer mogelijkheden.

Met behulp van de knop Filter toepassen kunnen we de filter activeren of als
knop Filter verwijderen ook weer ongedaan maken.

Stel dat we willen weten welke boekingen met de vertrekdatum op de 23ste vallen. We
kunnen dan in de tabel een veld selecteren met de waarde 23 en daarna de knop
Selectiefilter gebruiken. We gaan dit eens proberen.

10 Dubbelklik in de kolom VERTREK op de waarde 23 om deze te selecteren

18
Access 2003 Het afleiden en zoeken van informatie 4

47 Klik op de knop OK

Bij Zoeken naar kunnen we diverse combinaties ingeven. Hierna volgt een overzicht
van de vele mogelijkheden die er zijn.

Jokertekens worden gebruikt om naar gedeeltelijk of geheel overeenkomende waarden


te zoeken. We kunnen in een zoekreeks jokertekens gebruiken als tijdelijke aanduiding
voor andere tekens wanneer we een waarde zoeken en:
` we slechts een deel van de waarde kennen;
` we alle waarden willen zoeken die met een bepaalde letter beginnen of die een
bepaald patroon hebben.

In een Microsoft Access-database kunnen we in de dialoogvensters Zoeken en


Vervangen, en in query's, opdrachten en expressies met behulp van de volgende
tekens veldwaarden, records, bestandsnamen en dergelijke zoeken.

Teken Toepassing Voorbeeld


* Komt overeen met een willekeurig Met we* vinden we:
aantal tekens. Kan worden gebruikt als wel, wereld en weten.
eerste of laatste teken in de tekenreeks.
? Komt overeen met één willekeurig Met b?l vinden we:
teken. bal, bel, bil, bol en bul.
[] Komt overeen met elk van de Met b[ae]l vinden we:
afzonderlijke tekens tussen de
bal en bel, maar niet bil, bol
vierkante haakjes. of bul.
! Komt overeen met elk teken dat nietMet b[!ae]l vinden we:
tussen de vierkante haakjes staat. bil, bol en bul, maar niet bal
of bel.
- Komt overeen met elk van de tekens Met b[a-c]d vinden we:
binnen een bereik van tekens. We bad, bbd, en bcd
moeten een bereik in oplopende
volgorde opgeven (dus van A tot Z,
niet van Z tot A).
# Komt overeen met één cijfer. Met 1#3 vinden we:
103, 113, 123, enz.

Aanvullende informatie

` Jokertekens worden in principe gebruikt voor gegevens van het type Tekst. We
kunnen jokertekens soms ook gebruiken voor gegevens van een ander type, zoals
datums, mits we de landinstellingen voor deze gegevenstypen niet hebben
gewijzigd.
` Als we jokertekens gebruiken om tekens als een sterretje (*), een vraagteken (?),
een hekje (#), een vierkant haakje openen ([) of een koppelteken (-) te zoeken,
moeten we dit teken tussen vierkante haakjes plaatsen. Als we bijvoorbeeld een
vraagteken zoeken, typen we [?] in het dialoogvenster Zoeken. Als we tegelijk
naar een koppelteken en een aantal andere tekens zoeken, plaatsen we het
koppelteken voor of na de andere tekens tussen de vierkante haakjes. Als we echter

27
Access 2003 De structuur van een tabel 5

5 De structuur van een tabel

Hoe is een tabel opgebouwd? Uit welke velden is een tabel opgebouwd, hoe groot is
elk veld, wat voor een soort veld is het en waar moeten we nog meer op letten? Om dit
te kunnen beantwoorden gaan we de huidige structuur van de tabel boeking bekijken.
Daarna gaan we een nieuwe tabel maken.

1 Klik in de databasewerkbalk op de knop Openen


2 Dubbelklik op Reizen
3 Klik op de knop Openen om de database te openen
4 Klik op de tabel Boeking om deze te selecteren
5 Klik op de knop Ontwerpen om het ontwerp van de tabel Boeking te
bekijken

Het bovenstaand venster geeft de velden aan die we gebruiken in de tabel Boeking.
Van het veld KLANTNR kunnen we de structuur zien: het is een Numeriek veld
(alleen getallen zijn toegestaan) met een Veldlengte van Integer, het Aantal
decimalen Automatisch, het moet ingevuld worden en is niet Geïndexeerd. We
zullen eens gaan kijken naar de andere velden.

6 Klik op REISCODE

Hier zien we dat dit veld een Tekst veld is, dat wil zeggen dat alle karakters gebruikt
mogen worden. De lengte is maximaal 4 tekens. Het invullen van het veld is niet
vereist en het is niet Geïndexeerd.

31
5 De structuur van een tabel Access 2003

Bij alle andere velden vinden we ongeveer dezelfde eigenschappen. In onderstaand


overzicht vinden we de mogelijkheden van Access.

Het gegevenstype:

Gegevenstype Inhoud Grootte

Tekst Alfanumerieke tekens maximaal 255 tekens


Memo Alfanumerieke tekens
(meestal een aantal zinnen
of alinea’s) maximaal 65.535 tekens
Numeriek Numerieke waarden
(gehele getallen of breuken)
Datum/tijd Datums en tijdstippen, van
jaar 100 t/m 9999
Valuta Valutawaarden en numerieke
gegevens tot 4 decimalen
Auto-nummering Numeriek waarde die automatisch
wordt verhoogd voor elke record
dat we toevoegen
Ja/Nee Ja/Nee of Aan/Uit
OLE-object OLE-objecten, figuren of
andere binaire gegevens maximaal 1 gigabyte
Hyperlink tekst gebruikt als hyperlink
adres
Wizard opzoeken… m.b.v. een andere tabel wordt
een veld en bijhorend type gezocht

32
Access 2003 De opbouw van een database 6

6 De opbouw van een database

We gaan een personeelstabel opzetten voor de personeelsadministratie. Om te


beginnen moeten we ons goed afvragen welke gegevens we willen opnemen in de
tabel. Welke gegevenstype het moet zijn, hoe lang, enz. We gaan nu niet alle velden
opnemen, maar een selectie uit de mogelijk voorkomende velden in een dergelijke
tabel.

Personeelslidnummer tekst 3 posities


Achternaam tekst 20 posities
Voorletters tekst 10 posities
geboortedatum datum
woonplaats tekst 20 posities
man ja/nee
burgerlijke staat tekst 1 positie
afdeling tekst 10 posities
salaris valuta
aantal kinderen numeriek

Er is geen beperking bij het geven van namen aan velden. Toch is het verstandig om
een veldnaam niet te lang te maken. Bij alle bewerkingen zal men in aanraking komen
met die lange naam. Beter is het om een bijschrift op te nemen bij de
veldeigenschappen, om daarmee in overzichten toch de gewenste gegevens te zien. Bij
het invullen van de veldnamen kunnen we afwijken van de volledige naam. We zullen
beide mogelijkheden gebruiken om de verschillen te laten zien.

Bij het gegevenstype tekst is ook de veldlengte van belang. Standaard vult Access 50
posities in. Vaak is dit te veel. Over de lengte kunnen we verschillende meningen
hebben, maar soms liggen deze eigenlijk al vast. De postcode in Nederland heeft een
lengte van 7 posities en niet meer. In bovenstaand voorbeeld is het nummer vastgelegd
op drie posities. We kunnen dus combinaties maken van letters en cijfers tot maximaal
3 tekens.

We kunnen nu een nieuwe database aanmaken. Dit is een eenmalige handeling.

1 Klik in de databasewerkbalk op de knop Nieuw

Rechts verschijnt een lijst met mogelijke keuzes.

37
6 De opbouw van een database Access 2003

Met behulp van het andere tabblad kunnen we voorgedefinieerde databases aanmaken.
Wij willen zelf een database gaan samenstellen.

2 Klik op de keuze Lege database om een lege database te openen

Access vraagt naar een naam voor onze database.

3 Selecteer indien nodig de map Access in de map Computerlesmateriaal


4 Typ in: Medewerkers
5 Klik op de knop Maken om de lege database Medewerkers aan te maken

De nieuwe database wordt nu aangemaakt. Een database is een verzameling informatie


met betrekking tot een bepaald onderwerp of doel, zoals het bijhouden van klantorders
of het onderhouden van een muziekverzameling. Als onze database niet op een

38
Access 2003 De opbouw van een database 6

computer is opgeslagen, of als slechts delen ervan op een computer zijn opgeslagen,
moeten we de gegevens in verschillende bronnen bijhouden, die we zelf moeten
coördineren en ordenen.

De volgende stap is het aanmaken van een nieuwe tabel. Hierbij hebben we weer de
keuze tussen het laten helpen door Access of door zelf alles vast te leggen. We doen
het zelf.

6 Dubbelklik op

39
6 De opbouw van een database Access 2003

We kunnen nu de velden gaan invullen met alle eigenschappen.

7 Typ in: Personeelsnummer


8 Druk op [Enter]

Access vult nu zelf het gegevenstype Tekst in. Voor dit veld is dit goed. We kunnen
direct verder gaan met de Veldeigenschappen in het onderste gedeelte van het
venster. De veldlengte staat op de standaardwaarde. Dit is teveel voor een
personeelsnummer. We zullen dit gaan aanpassen.

9 Dubbelklik in het tekstkader Veldlengte om de huidige veldlengte te selecteren

10 Typ in: 3
11 Klik in het tekstkader Vereist
12 Klik op het keuzelijstsymbool

40
Access 2003 Het maken van query’s 7

7 Het maken van query’s

We hebben al eerder gezien dat we met behulp van filters gegevens kunnen opvragen.
We gaan in dit hoofdstuk in op het maken van query’s. Een query is een vraag die, in
tegenstelling tot een filter, opgeslagen kan worden. Een query heeft ook meerdere
mogelijkheden. Zo kunnen we zelf aangeven welke velden we willen zien, de
sorteringsmogelijkheden zijn ruimer en de volgorde van de velden is makkelijker vast
te leggen. Verder heeft een query geen invloed op het ontwerp van de tabel. Het toont
alleen de in de vraag vastgelegde gegevens uit de tabel(len).

1 Klik in de databasewerkbalk op de knop Openen


2 Dubbelklik op Reizen
3 Klik op de knop Openen om de database te openen
4 Klik bij Objecten op de keuze Query's in het venster Reizen : Database

Het venster geeft ons al 2 keuzemogelijkheden voor het maken van een query. Via de
knop Nieuw krijgen we meerdere mogelijkheden te zien.

5 Klik op de knop Nieuw in het venster Reizen : Database

Het dialoogvenster geeft ons nu de keuze tussen het zelf maken van een query met
behulp van de keuze Ontwerpweergave en het volgen van een wizard (een
hulpmiddel bij het selecteren van gegevens). We gaan zelf de query maken dus kiezen
we voor de geselecteerde optie Ontwerpweergave.

55
7 Het maken van query’s Access 2003

6 Klik op de knop OK om te kiezen voor Ontwerpweergave

Nu moeten we aangeven welke tabel(len) we willen gebruiken.

7 Klik op Boeking om deze tabel te selecteren


8 Klik op de knop Toevoegen zodat de tabel Boeking kan worden gebruikt in de query

56
Access 2003 Het maken van query’s 7

We zien dat de tabel Boeking in de query wordt opgenomen.

9 Klik op de knop Sluiten in het venster Tabel toevoegen

Op het scherm verschijnt het dialoogvenster voor het maken van een selectiequery.

We gaan een overzicht maken van KLANTNR, REISCODE, VERTREK en


AANTAL. We beginnen met het selecteren van de velden die we nodig hebben voor
het maken van deze query.

10 Dubbelklik op het veld KLANTNR om dit veld te selecteren


11 Dubbelklik op het veld REISCODE zodat het veld wordt toegevoegd aan de selectie
12 Dubbelklik op het veld VERTREK zodat het veld wordt toegevoegd aan de selectie

57
7 Het maken van query’s Access 2003

Om het veld AANTAL op te halen moeten we in de tabel Boeking met behulp van de
schuifbalk naar beneden gaan.

13 Klik in de schuifbalk om in het overzicht naar beneden te gaan


14 Dubbelklik op het veld AANTAL zodat het veld wordt toegevoegd aan de selectie

Het volgende resultaat zien we op het scherm.

Van de tabel Boeking zijn de velden KLANTNR, REISCODE, VERTREK en


AANTAL geselecteerd voor de query.

Deze query kan nu worden uitgevoerd. Dit is mogelijk door gebruik te maken van de
knop Uitvoeren of de knop Beeld . Met behulp van deze knop kunnen we
bepalen hoe de query moet worden weergegeven. Zo kunnen we kiezen voor de
Ontwerpweergave of de Gegevensbladweergave. De knop geeft nu een
gegevensblad weer, zodat we vanuit de huidige ontwerpweergave kunnen
overschakelen naar de gegevensbladweergave.

15 Klik in de databasewerkbalk op de knop Beeld

We zien nu alle 39 records met de 4 geselecteerde velden.

58
Access 2003 Het veranderen van informatie 8

8 Het veranderen van informatie

We hebben al gezien dat we bepaalde informatie kunnen veranderen. Willen we nu bij


alle records of bij een bepaalde groep een zelfde verandering teweeg brengen dan
kunnen we dat beperken tot één handeling.

We willen bijvoorbeeld bij iedereen het salaris verhogen met 3 %.

1 Klik in de databasewerkbalk op de knop Openen


2 Dubbelklik op Medewerkers om de database te openen
3 Klik op de knop Openen om de database te openen

We gaan eerst eens naar de inhoud van de tabel kijken.

4 Klik bij Objecten op Tabellen in het venster Medewerkers : Database


5 Dubbelklik op Personeelsgegevens om de tabel te openen

We zien nu de personeelsleden in deze tabel. We gaan even naar de salarissen kijken.

Bekijk de salarissen even, voordat we deze verhogen met 3 %.

Het verhogen van de salarissen kunnen we door Access laten uitvoeren met behulp
van een bijwerkquery zodat we niet zelf elk individueel veld hoeven aan te passen.
Een query kunnen we aanmaken met behulp van het tabblad Query's in het venster
Database zoals we tot nu toe telkens hebben gedaan. Ook is het mogelijk om gebruik
te maken van de knop Nieuw Object: Autoformulier in de databasewerkbalk
waarmee we verschillende nieuwe objecten zoals query's kunnen aanmaken. Zoals de
naam van de knop al aangeeft zal standaard een autoformulier worden aangemaakt.
Met behulp van het keuzelijstsymbool van deze knop kunnnen we echter ook
kiezen voor een ander object, zoals de query.

6 Klik in de databasewerkbalk op het keuzelijstsymbool van de knop Nieuw Object:


Autoformulier

85
8 Het veranderen van informatie Access 2003

7 Klik op Query

We kiezen weer voor de ontwerpweergave, wat al is geselecteerd.

8 Klik op de knop OK

Omdat de tabel Personeelsgegevens al is geopend is het niet nodig om aan te geven


welke tabel we willen gebruiken voor de query. In het bovenste gedeelte van het
venster Query1 : Selectiequery zien we dan ook de veldgegevens van de tabel
Personeelsgegevens al staan. Tevens zien we aan de titel van dit venster dat we nog
wel aan het werk zijn met een Selectiequery, waarmee alleen selectieoverzichten zijn
te maken. Als we de inhoud van velden willen aanpassen moeten we werken met
behulp van een Query bijwerken. Met behulp van de knop Querytype kunnen
we dit aanpassen.

86
Access 2003 Het veranderen van informatie 8

9 Klik in de databasewerkbalk op het keuzelijstsymbool van de knop Querytype

Hier zien we een zestal verschillende query’s.

Selectiequery Dit is een query zoals we deze al eerder gezien hebben. De


selectiequery is het meest voorkomende querytype. Een
selectiequery haalt gegevens op uit een of meer tabellen en geeft
het resultaat weer in een gegevensblad waarin we de records
kunnen bijwerken (met enkele beperkingen). Met een
selectiequery kunnen we ook records groeperen en totalen,
aantallen, gemiddelden en dergelijke waarden berekenen.

Kruistabelquery In een kruistabelquery worden samenvattende waarden (totalen,


aantallen en gemiddelden) van een veld weergegeven in een tabel,
waarbij deze waarden worden gerangschikt in de vorm van een
lijst met titels aan de linkerkant van het gegevensblad (de
rijkoppen) en een lijst met titels aan de bovenkant van het
gegevensblad (de kolomkoppen).

Tabelmaakquery Met deze query’s maken we een nieuwe tabel van de gegevens of
een deel van de gegevens in één of meer tabellen.

Query bijwerken Hiermee brengen we in één keer wijzigingen aan in een groep
records in één of meer tabellen. We kunnen bijvoorbeeld de
prijzen van alle zuivelproducten met 10 procent verhogen, of de
salarissen van iedereen in een bepaalde functiecategorie met 5
procent verhogen. Met een bijwerkquery kunnen we gegevens in
bestaande tabellen wijzigen.

87
Access 2003 Het maken van een index 9

9 Het maken van een index

De gegevens worden in die volgorde op ons beeldscherm gezet waarin ze door ons
zijn ingebracht. Vaak is het wenselijk om de gegevens in een andere volgorde
gepresenteerd te krijgen. bijvoorbeeld: - alfabetisch
- op nummer
- op postcode
- enz.

Dit is mogelijk, zoals we al gezien hebben, met een filter. Door het ontwerp, de filter,
op te slaan wordt de gekozen volgorde bewaard. Als we echter een nieuw record
toevoegen is het mogelijk dat de volgorde niet meer klopt en moeten we er weer zelf
voor zorgen dat deze aangepast wordt.

Een andere mogelijkheid is het sorteren op het moment dat we de tabel gebruiken met
behulp van de opdrachten oplopend of aflopend sorteren van de geselecteerde
kolom (het veld). Willen we echter een sortering vasthouden en over meerdere velden
laten lopen (bijv. op woonplaats en binnen de woonplaats op naam), dan zullen we
moeten kiezen voor een andere optie.
Een veel gebruikte vorm is het maken van een index (sleutelveld ofwel primaire
sleutel). De volgorde ligt dan altijd vast. De index is ook belangrijk als we met
meerdere gekoppelde tabellen werken. De sleutelvelden worden gebruikt voor de
koppeling. Dit veld (index) moet uniek (eenmalig) zijn. Komt in een tabel een code
vaker voor, dan zullen we moeten zoeken naar een combinatiesleutel (2 of meer
velden).

Niet alleen het maken van koppelingen is gebonden aan het maken van een index. De
computer vindt ook sneller gegevens als een tabel geïndexeerd is. Bij een
zoekopdracht kan een computer alle records een voor een aflopen totdat het gegeven
gevonden is. Is een index aanwezig dan zal de computer bij het zoeken naar een
geïndexeerd gegeven veel sneller klaar zijn. Vergelijk dit met het zoeken van iets in
een boek. We bladeren dan ook niet iedere bladzijde door, maar zullen in de index
kijken op welke bladzijde het staat.

93
9 Het maken van een index Access 2003

In ons voorbeeld hebben we 3 tabellen. In de tabel Klanten is KLANTNR het unieke


veld. In de tabel Bestemming is REISCODE het unieke veld. In de tabel Boeking is
KLANTNR niet uniek (één klant kan meerdere reizen maken) en is REISCODE niet
uniek (één reis kan door meerdere klanten zijn geboekt), echter de combinatie
KLANTNR+REISCODE is wel uniek.

Klant 456 (John) heeft 2 reizen geboekt (CH22 en HO14). Het veld KLANTNR is dus
niet uniek in de tabel Boeking. Reis CA10 is volgens bovenstaand overzicht 2 maal
geboekt (door klant 456 en door 537). Het veld REISCODE is dus ook niet uniek in de
tabel Boeking. De combinatie KLANTNR+REISCODE is dus wel (456 met CH22;
456 met HO14; 534 met CA10; 537 met CA10).

1 Klik op de knop Openen


2 Dubbelklik op Reizen om de database te openen
3 Klik op de knop Openen om de database te openen
4 Dubbelklik op Klanten om de tabel te openen

We hebben al gezien dat we een kolom (veld) kunnen selecteren en dat dan kunnen
sorteren. Maar wat moeten we doen als we een sortering op meerdere velden willen
gebruiken. Bijvoorbeeld de tabel moet gesorteerd worden op woonplaats en
daarbinnen op adres. Dit kunnen we met behulp van een filter.

5 Klik in de menubalk op Records


6 Wijs de menukeuze Filter aan met de muis zodat het submenu zichtbaar wordt

94
Access 2003 Objecten 10

10 Objecten

We hebben in de voorafgaande hoofdstukken een aantal tabellen gebruikt met de


daarbij aanwezige structuur. In de windows-database pakketten is het ook mogelijk
om een object in een tabel te plaatsen. Een object kan van alles zijn, bijv.
- Lotus 1-2-3 werkblad
- Geluid
- Excel werkblad
- Word document
- PowerPoint presentatie
- Paintbrush figuur
- WordPerfect document
- enz.

We gaan met behulp van een bestaande tabel eens kijken naar het gebruik van een
dergelijk object. We gebruiken in deze tabel tevens een andere opmaak, namelijk het
formulier. Dit geeft ons de mogelijkheid om inderdaad het object ook te bekijken, wat
in de tabel-vorm niet gaat.

1 Klik op de knop Openen


2 Dubbelklik op Wibees_bv om de database te openen
3 Klik op de knop Openen om de database te openen
4 Dubbelklik op Werknemers om de tabel te openen

De tabel werknemers wordt geopend en we zien een indeling in records en velden.

5 Verplaats met behulp van de schuifbalk het overzicht, zodat de volgende velden
zichtbaar worden

109
10 Objecten Access 2003

We zien in dit overzicht een veld Foto. In dit veld staat bijna overal het object
Paintbrush Picture, behalve bij het eerste veld. Hier is een Bitmap-afbeelding
gebruikt. We kunnen nu alleen zien waaraan de inhoud van het veld gekoppeld is, we
zien echter niet de inhoud. Hiervoor hebben we een formulier nodig. We gaan eens
kijken naar zo'n formulier. Met behulp van de knop Databasevenster kunnen we
terugkeren naar het databasevenster.

6 Klik in de databasewerkbalk op de knop Databasevenster


7 Klik bij Objecten op Formulieren in het venster Wibees_bv : Database
8 Dubbelklik op Stamgegevens om het formulier te openen

Access opent nu het formulier en laat het eerste record zien in een formulieropmaak.

110
Access 2003 Rapporten 12

12 Rapporten

We hebben in het voorgaande hoofdstuk een formulier gemaakt. Nu gaan we een


rapport op een vergelijkbare manier maken. Met behulp van rapporten kunnen we
gegevens ophalen en presenteren als betekenisvolle informatie die we kunnen
gebruiken en verspreiden. Voorbeelden van rapporten zijn adreslabels, facturen,
verkoopoverzichten, etiketten en telefoonlijsten. Hoe wordt een rapport gemaakt? In
Access kunnen we dit op twee manieren gaan maken:

Rapport
AutoRapport

Met AutoRapport wordt door Access een basisrapport gemaakt dat door de
gebruiker kan worden aangepast. Met Rapport moet de gebruiker het hele
formulier zelf bouwen of werken met de wizard. We gaan eerst eens kijken naar het
basisrapport.

1 Klik bij Objecten op Tabellen in het venster Wibees_bv : Database

De tabel Werknemers is geselecteerd. Van deze tabel gaan we een rapport maken.

2 Klik op het keuzelijstsymbool van de knop Nieuw object: AutoFormulier


3 Klik op de menukeuze AutoRapport om automatisch een rapport
te maken

Access maakt een rapport, waarbij alle velden onder elkaar geplaatst worden. De
opmaak kunnen we gaan aanpassen.

127
12 Rapporten Access 2003

De muisaanwijzer is veranderd in een vergrootglas .

4 Klik een aantal keren in het rapport om de weergave aan te passen

128
Access 2003 Relationele database 13

13 Relationele database

De database reizen bevat 3 tabellen; Klanten, Boeking en Bestemmingen. Tussen


deze 3 tabellen bestaat een relatie. Zowel in de tabel Klanten als Boeking vinden we
een gezamenlijk veld terug; KLANTNR. In de tabellen Boeking en Bestemmingen
vinden we als gezamenlijk veld; REISCODE. Bij het hoofdstuk over het maken van
een index hebben we gezien dat we in een tabel één veld of een combinatie van velden
moeten hebben om een record uniek te maken. In de tabel Klanten is dat veld:
KLANTNR; in Bestemmingen is dat: REISCODE en in Boeking is dat de
combinatie: KLANTNR met REISCODE.

Bij het maken van query’s kunnen we van de koppeling gebruik maken. We zullen in
dit hoofdstuk een koppeling tot stand brengen tussen de aanwezige tabellen en we
bekijken een eenvoudig query met betrekking tot Relationele database.

1 Klik in de databasewerkbalk op de knop Openen


2 Dubbelklik op Reizen om deze database te openen
3 Klik op de knop Openen om de database te openen

Met behulp van de knop Relaties uit de databasewerkbalk kunnen we de relaties


tussen de verschillende tabellen uit de database vastleggen. Voorwaarde is dat de
indexen gemaakt zijn.

4 Klik in de databasewerkbalk op de knop Relaties

Op het scherm verschijnen een tweetal vensters.

149
13 Relationele database Access 2003

Het eerste venster Tabel toevoegen ligt over het tweede venster Relaties. In het
venster Tabel toevoegen moeten we aangeven van welke tabellen we de relatie willen
gaan aanmaken.

5 Klik op Klanten om de tabel te selecteren


6 Klik op de knop Toevoegen in het venster Tabel toevoegen

In het tweede venster verschijnt de tabel Klanten.

7 Klik op Boeking om de tabel te selecteren


8 Klik op de knop Toevoegen in het venster Tabel toevoegen

Ook nu verschijnt in het tweede venster deze tabel.

9 Klik op Bestemmingen om de tabel te selecteren


10 Klik op de knop Toevoegen in het venster Tabel toevoegen

Meer tabellen kunnen we niet toevoegen. Het venster Tabel toevoegen kunnen we nu
sluiten.

11 Klik op de knop Sluiten in het venster Tabel toevoegen

In het venster Relaties zijn nu de 3 tabellen te zien. We zien dat in de tabellen velden
vet weergegeven worden. Hieraan kunnen we zien op welk veld of velden de tabel is
geïndexeerd. Bij de tabel Klanten is dat KLANTNR, bij de tabel Boeking:
KLANTNR+REISCODE en bij de tabel Bestemmingen: REISCODE.

150
Access 2003 Relationele database 13

Tussen de verschillende tabellen kunnen we nu zelf de relaties gaan vastleggen. Het


veld REISCODE uit de tabel Reizen is al actief. Dit veld gaan we slepen naar
hetzelfde veld in de tabel Boeking om zo de koppeling te maken. Om tabellen te
kunnen koppelen moeten de tabellen een sleutelveld (index) hebben. Access kan alleen
een record in een andere tabel lezen als er een unieke code aanwezig is.

12 Sleep het veld REISCODE uit de tabel Bestemmingen naar het veld REISCODE in
de tabel Boeking

In het volgende dialoogvenster wordt gevraagd om de relatie tussen de velden


REISCODE in de beide tabellen te maken.

151
13 Relationele database Access 2003

In dit venster kunnen we nog instellingen meegeven.

Referentiële integriteit afdwingen


Referentiële integriteit afdwingen wil zeggen dat Access ervoor zorgt dat relaties
tussen records in de gekoppelde tabellen geldig zijn en dat we niet per ongeluk
gekoppelde gegevens verwijderen of wijzigen. We schakelen dit selectievakje in als
we referentiële integriteit willen gebruiken voor deze relatie. We schakelen deze optie
uitsluitend in als aan alle volgende voorwaarden wordt voldaan: het overeenkomende
veld van de primaire tabel bevat een primaire sleutel, de gekoppelde velden zijn van
hetzelfde gegevenstype en beide tabellen zijn opgeslagen in dezelfde Access database.

Gerelateerde velden trapsgewijs bijwerken


We schakelen Referentiële integriteit afdwingen in en we schakelen vervolgens
Gerelateerde velden trapsgewijs bijwerken in als we overeenkomende waarden in de
gekoppelde tabel automatisch willen laten bijwerken als we de waarde van een
primaire sleutel in de primaire tabel wijzigen. We schakelen Referentiële integriteit
afdwingen in en we schakelen vervolgens Gerelateerde velden trapsgewijs bijwerken
uit als er geen wijzigingen mogen worden aangebracht in de waarde van een primaire
sleutel in de primaire tabel als de gekoppelde tabel gekoppelde records bevat.

Gerelateerde records trapsgewijs verwijderen


We schakelen Referentiële integriteit afdwingen in en schakel vervolgens Gerelateerde
records trapsgewijs verwijderen in als we gekoppelde records in de gekoppelde tabel
automatisch willen laten verwijderen wanneer we een record verwijderen in de
primaire tabel. We schakelen Referentiële integriteit afdwingen in en we schakelen
vervolgens Gerelateerde records trapsgewijs verwijderen uit als er geen records mogen
worden verwijderd uit de primaire tabel wanneer de gekoppelde tabel gekoppelde
records bevat.

13 Klik op de knop Maken in het venster Relaties bewerken

De relatie tussen de twee tabellen wordt middels een lijn tussen de twee gekoppelde
velden uit de tabellen weergegeven. We gaan ook de relatie tussen de tabellen
Klanten en Boeking maken.

152
Case Access 2003

Case 1

1 Voor de tennisvereniging uit Eindhoven moet een ledenbestand worden bijgehouden.


Men heeft gekozen om in Access een database op te zetten. De database moet de naam
ACE krijgen. Maak een nieuwe database aan in de map:
Computerlesmateriaal\Access.

2 Om de primaire gegevens van de clubleden bij te kunnen houden moet er tabel Leden
worden gemaakt gebaseerd op de hieronder afgebeelde gegevens. Maak de tabel aan
en voer de onderstaande gegevens in.

Let op! Dit is één tabel die in twee delen is weergegeven omdat niet alle kolommen
naast elkaar op de pagina passen. Kies zelf de juiste veldtypes, veldlengte en stel een
primaire sleutel in.

3 De wedstrijdleiding wil graag op ieder moment een actuele lijst kunnen uitdraaien
waarop de spelers staan die uit Eindhoven komen. Deze spelers wonen in de buurt en
kunnen eventueel worden gebeld als er een invaller nodig is. Op de lijst moeten alleen
de spelers worden opgenomen die ook aan de competitie deelnemen. Maak een query
waarin de onderstaande kolommen zijn opgenomen. Bewaar de query onder de naam
qryInvallers

170
Index Access 2003

A J
adresetiketten...............................................142 ja/nee............................................................. 32
afdrukken.......................................................68 jokerteken...................................................... 27
afdrukvoorbeeld.............................................67 L
afvinkvak .................................................50, 65
and .........................................22, 59, 61, 73, 82 lengte nul toestaan......................................... 33
autoformulier ...............................................115 logisch-veld................................................... 44
auto-nummering ............................................32 M
autorapport...................................................127
macro’s........................................................... 8
B memo ............................................................ 32
bijschrift...................................................33, 44 menubalk......................................................... 4
bijwerkquery......................................85, 86, 90 middellange datumnotatie ............................. 44
byte ................................................................34 modules ........................................................... 8
C N

criteria......................................................64, 76 nieuw............................................................. 37
nieuw object: autoformulier.......................... 85
D
nieuwe record................................ 11, 167, 177
database ...........................................................1 notatie...................................................... 33, 35
databasewerkbalk ............................................4 numeriek ....................................................... 32
datum/tijd.......................................................32 numerieke velden .......................................... 34
decimal ..........................................................34 O
F
object invoegen ................................... 111, 112
filter ...............................................................94 objecten ........................................................... 8
filter toepassen...............................................20 objecten en formulieren .............................. 109
filter toepassen / filter verwijderen................18 OLE-object.................................................... 32
filter/sorteervolgorde ongedaan maken .........98 ontwerpweergave .............................. 55, 58, 78
filterformulier ................................................18 or 22, 73, 82
filters..............................................................55 P
formulier ......................................................115
formulieren ......................................................8 pagina’s........................................................... 8
formulierfilter ................................................21 precisie .......................................................... 34
primaire sleutel.............................. 97, 102, 106
G
printerinstellingen ......................................... 68
geavanceerde filter-/sorteeropties..................95 Q
gegevensbladweergave ..................................58
gegevenstype .................................................32 query’s ...................................................... 8, 55
geïndexeerd .............................................31, 98 R
groepsniveau................................................133
rapport......................................................... 127
H rapporten ......................................................... 8
hyperlink........................................................32 record .............................................................. 1
recordselectieknoppen................................... 10
I
referentiële integriteit afdwingen ................ 168
index ..............................................................93 relaties ......................................................... 149
indexen ........................................................103 relationele database..................................... 149
integer............................................................34 S
invoermasker .................................................33
selectiefilter............................................. 18, 19
selectiequery ........................................... 57, 63

174
Access 2003 Index

sleutel ..........................................................102 veld ................................................................. 1


sorteren.................................................... 15, 93 veldeigenschappen.................................. 33, 40
standaardwaarde............................................33 veldlengte................................................ 31, 33
statusbalk.........................................................4 vereist ........................................................... 33
statusknop...................................... 12, 166, 178 vergrootglas .................................................. 67
structuur................................................... 31, 66 verwijderen record ........................................ 12
T
voorgedefinieerde databases......................... 38
voorwaarden ........................................... 22, 82
tabel .................................................................1
W
tabvolgorde..................................................119
tekst ...............................................................32 wijzigen in .................................................... 88
titelbalk............................................................4 wizard adresetiketten .................................. 140
V
wizard rapport............................................. 131
Z
validatieregel .................................................33
validatietekst .................................................33 zoeken........................................................... 23
valuta .............................................................32

175

You might also like