Office
Aanmelden
Relaties gebruiken

Aan de slag met tabelrelaties

Uw browser biedt geen ondersteuning voor video. Installeer Microsoft Silverlight, Adobe Flash Player of Internet Explorer 9.

Het voordeel van een relationele database is dat u gegevens uit verschillende tabellen kunt combineren. Hiervoor moet u eerst relaties tussen de tabellen maken. Vervolgens kunt u in Access automatisch gegevens in query's, formulieren en rapporten combineren.

Als u alle bestaande relaties wilt bekijken die zijn gedefinieerd voor een database, opent u een Access-sjabloon, gaat u naar het tabblad Hulpmiddelen voor databases en selecteert u Relaties.

Opmerking: Als u een lege database opent of nog geen tabelrelaties hebt gedefinieerd, wordt u gevraagd een tabel of query toe te voegen. U hebt minimaal twee tabellen nodig voordat u een relatie kunt toevoegen. In het ideale geval maakt u eerst al uw tabellen. Zie Relaties maken met de Wizard Opzoeken en Relaties maken met het deelvenster Relaties voor meer informatie.

De weergave Relaties

Met de regels in de weergave Relaties wordt het verband tussen de tabellen aangegeven. In de volgende afbeelding is de linkertabel de bovenliggende tabel. De rechtertabel is de onderliggende tabel. De lijn tussen de tabellen verbindt de velden (in dit geval Order-id en Product-id) die worden gebruikt om gegevens te vergelijken.

Relaties worden aangegeven met lijnen die zijn getekend tussen bovenliggende en onderliggende velden.

Lijnen en symbolen geven aan hoe de tabellen zijn gerelateerd:

  • Een dikke verbindingslijn betekent dat u referentiële gegevensintegriteit wilt afdwingen. Dat is goed. Hierdoor blijven uw gegevens gesynchroniseerd.

  • Het cijfer 1 in de afbeelding geeft aan dat er slechts één overeenkomende record in de tabel kan zijn. In de tabel Orders die hier wordt weergegeven, komt er slechts één record overeen met elke order.

  • Het symbool ∞ geeft aan dat veel records dezelfde id kunnen hebben. In de tabel Ordergegevens die hier wordt weergegeven, kan een order (aangegeven met de order-id) meerdere keren worden weergegeven omdat dezelfde order meerdere producten kan bevatten.

Typen relaties tussen tabellen

Er zijn drie typen relaties tussen tabellen:

  • Een-op-een. Wanneer elk item in elke tabel slechts één keer voorkomt. Elke werknemer kan bijvoorbeeld maar één bedrijfsauto gebruiken. Zie Een-op-een-relaties maken voor meer informatie.

  • Een-op-veel. Wanneer een item in een tabel een relatie kan hebben met meerdere items in een andere tabel. Elke inkooporder kan bijvoorbeeld meerdere producten bevatten.

  • Veel-op-veel. Wanneer een of meer items in een tabel een relatie kunnen hebben met een of meer items in een andere tabel. Elke order kan bijvoorbeeld meerdere producten bevatten en elk product kan voorkomen in een groot aantal orders. Zie Veel-op-veelrelaties maken voor meer informatie.

Een-op-veel-relaties

Een van de meest voorkomende relaties tussen tabellen in een goed ontworpen database is de een-op-veel-relatie.

Normaal gesproken zijn relaties tussen tabellen afhankelijk van de primaire sleutel in een van de tabellen. De primaire sleutel is een unieke id (vaak numeriek) voor elke record. Als u wilt aangeven dat de gegevens in twee verschillende tabellen zijn gerelateerd, maakt u gewoonlijk een relatie met de primaire sleutel van een van de tabellen.

In de relatie die hier wordt weergegeven, heeft bijvoorbeeld elke persoon in de tabel Contactpersonen een id die de primaire sleutel is (die wordt aangegeven met het sleutelsymbool ernaast). Deze id wordt ook weergegeven in het veld Eigenaar in de tabel Activa. Als u een e-mail wilt sturen aan de persoon die aan een activum is gekoppeld, haalt u de waarde op uit het veld E-mailadres. Hiervoor zoekt u naar de waarde in het veld Eigenaar van de tabel Activa en zoekt u vervolgens naar de desbetreffende id in de tabel Contactpersonen. Het cijfer 1 aan het uiteinde van de verbindingslijn en het symbool ∞ aan het andere uiteinde geven aan dat dit een een-op-veel-relatie is, dus één contactpersoon kan zijn gekoppeld aan een groot aantal activa.

Een-op-veel-relaties

Een relatie bewerken

Als u een bestaande database wijzigt of de database hebt gemaakt met behulp van een sjabloon, kunt u de bestaande relaties aan uw wensen aanpassen.

Opmerking: Als de tabellen waarmee u wilt werken in gebruik zijn, moet u deze eerst sluiten, samen met de geopende objecten waarin deze worden gebruikt.

  1. Selecteer Hulpmiddelen voor databases > Relaties.

  2. Selecteer de lijn die twee gerelateerde tabellen verbindt.

    Tip: Als de gewenste relatie niet wordt weergegeven, selecteert u op het tabblad Ontwerp in de groep Relaties de optie Alle relaties.

  3. Selecteer op het tabblad Ontwerp de optie Relaties bewerken.

    Een bestaande relatie tussen tabellen bewerken

    Tabel/query is de bovenliggende tabel aan de linkerkant (in dit voorbeeld Klanten).

    Gerelateerde tabel/query is de onderliggende tabel (in dit voorbeeld Orders).

    Ook als de tabellen niet in deze volgorde worden weergegeven in de weergave Relaties, geeft de positie in het dialoogvenster de richting aan van de lijn waarmee deze worden verbonden en de relatie. Dit is belangrijk bij een-op-veel-relaties omdat de tabel aan de linkerkant staat voor 'een' (de bovenliggende tabel) en de tabel aan de rechterkant voor 'veel' (de onderliggende tabel).

  4. Als u de velden wilt wijzigen waarmee de tabellen worden verbonden, selecteert u een ander veld onder elke tabel die wordt weergegeven. In dit voorbeeld wordt het veld Id in de tabel Klanten verbonden met het veld Klant-id in de tabel Orders.

  5. Wijzig de manier waarop uw gegevens tussen tabellen worden gesynchroniseerd.

    Referentiële integriteit afdwingen

    Selecteer deze optie om ongeldige gegevens te voorkomen en ervoor te zorgen dat verwijzingen in tabelrelaties gesynchroniseerd blijven.

    U hebt bijvoorbeeld een een-op-een-relatie tussen de tabellen Werknemers en Werknemervergoedingen. Als een werknemer het bedrijf verlaat en u deze uit de tabel Werknemers verwijdert, wordt de gerelateerde werknemersrecord in de tabel Werknemervergoedingen ook verwijderd.

    Soms heeft het afdwingen van referentiële integriteit geen zin. U hebt bijvoorbeeld een een-op-veel-relatie tussen Verzenders en Orders. U verwijdert een verzender die is gekoppeld aan orders in de tabel Orders. Deze orders worden zwevende items. Dit houdt in dat deze nog wel een verzender-id hebben, maar dat de id niet meer geldig is omdat de record waarnaar wordt verwezen, niet meer bestaat.

    Gerelateerde velden trapsgewijs bijwerken

    Selecteer deze optie om ervoor te zorgen dat gegevens in de gerelateerde velden worden bijgewerkt in alle gerelateerde tabellen.

    U wilt bijvoorbeeld de id van een verzender wijzigen. Als u deze optie instelt, zorgt u ervoor dat de verzender-id wordt bijgewerkt, niet alleen in de tabel Verzender, maar ook in andere tabellen die hieraan zijn gekoppeld en deze verzender-id bevatten, zoals de tabel Orders.

    Gerelateerde records trapsgewijs verwijderen

    De selectie van deze optie hangt af van de vraag of u records in bepaalde tabellen wilt behouden, ook al worden deze mogelijk verwijderd uit andere tabellen.

    U verwijdert bijvoorbeeld een verzender. Als u deze optie selecteert, worden alle records verwijderd in alle tabellen die verwijzen naar deze verzender-id, inclusief alle orders (in de tabel Orders) die door deze verzender zijn verzonden. Selecteer deze optie alleen als u zeker weet dat u de ordergeschiedenis wilt verwijderen.

  6. Als u de relatie tussen de tabellen wilt wijzigen van een inner join in een outer join, selecteert u de knop Jointype. Zie Query's maken met outer joins voor meer informatie.

Een tabelrelatie verwijderen

Opmerking: Als de tabellen waarmee u wilt werken in gebruik zijn, moet u deze eerst sluiten, samen met de geopende objecten waarin deze worden gebruikt.

Een tabelrelatie verwijderen:

  1. Selecteer Hulpmiddelen voor databases > Relaties.

  2. Selecteer de lijn die de twee gerelateerde tabellen verbindt.

    Tip: Als de gewenste relatie niet wordt weergegeven, selecteert u op het tabblad Ontwerp in de groep Relaties de optie Alle relaties.

  3. Selecteer de Delete-toets. Als u wordt gevraagd om te bevestigen dat u de relatie wilt verwijderen, selecteert u Ja.

Opmerking: Als u een relatie verwijdert, wordt ook de ondersteuning voor referentiële integriteit voor deze relatie verwijderd. Hierdoor wordt niet langer automatisch voorkomen dat er wijzigingen worden doorgevoerd die resulteren in zwevende records aan de 'veel'-kant van een een-op-veel-relatie.

Wilt u meer zien?

Een relatie maken

Een relatie verwijderen

Training voor Excel

Training voor Outlook

Zodra u tabellen in uw database hebt, kunt u relaties tussen de tabellen maken. Relaties zijn essentieel, omdat hiermee uw tabellen weer aan elkaar worden gekoppeld nadat u uw gegevens hebt verdeeld, en ook omdat ze een grote invloed hebben op hoe u uw query's ontwerpt en antwoorden uit uw gegevens verkrijgt.

In een relationele database worden drie typen relaties tussen de tabellen gebruikt. Een-op-veel, veel-op-veel en een-op-een.

Welke relatie u gebruikt, is afhankelijk van uw gegevens. U hebt een een-op-veel-relatie als één record in de ene tabel is gerelateerd aan een of meer records in een andere tabel.

Onze voorbeelddatabase heeft dit soort relatie. Eén klant kan een of meer telefoonnummers hebben en elk telefoonnummer is gerelateerd aan slechts één klant.

Van een veel-op-veel-relatie is sprake wanneer een enkel record in tabel A aan een of meer records in tabel B kan zijn gerelateerd en een enkel record in tabel B ook aan een of meer records in tabel A kan zijn gerelateerd.

Doorgaans komen veel-op-veel-relaties voor bij databases voor het bijhouden van orders, waarbij een order vele producten kan bevatten en een product deel kan uitmaken van meerdere orders.

Ook ziet u dit type relatie in de studentendatabases, waarin veel studenten in veel klaslokalen kunnen zitten.

U hebt een een-op-een-relatie als één record in de ene tabel is gerelateerd aan slechts één record in een andere tabel. Eén werknemer rijdt bijvoorbeeld in één bedrijfsauto. U zult dit niet zo vaak zien, want een-op-een-relaties komen niet heel vaak voor.

We selecteren Hulpmiddelen voor databases en vervolgens Relaties. Hiermee wordt het deelvenster Relaties geopend. U zult dit hulpmiddel vaak gaan gebruiken.

Hier maakt en beheert u de meeste relaties. Hier ziet u een veelvoorkomende relatie: twee tabellen met een lijn ertussen. De lijn geeft aan dat de tabellen zijn gerelateerd.

Sterker nog, dit is een een-op-veel-relatie. U kunt dit zien omdat de relatielijn hier een 1 en een ONEINDIGHEIDSTEKEN heeft. Deze tekens duiden enkele belangrijke concepten aan.

Ten eerste is de tabel aan de EEN-kant de BOVENLIGGENDE tabel, en de tabel aan de VEEL-kant is een ONDERLIGGENDE tabel.

Ten tweede hebben de meeste relaties KANTEN. In dit geval hebt u een tabel aan de EEN-kant en een tabel aan de VEEL-kant.

Kanten zijn belangrijk omdat ze van invloed zijn op het ontwerp van uw query's.

We selecteren eerst de relatielijn en vervolgens selecteren we Relaties bewerken op het lint.

Drie relatie-instellingen zijn van invloed op uw gegevens en helpen u om relaties juist te gebruiken: Referentiële integriteit, Trapsgewijs bijwerken en Trapsgewijs verwijderen. Deze instellingen doen het volgende.

Met referentiële integriteit worden de records in beide tabellen gesynchroniseerd. Dit is belangrijk voor het zuiver houden van uw gegevens, dus die zult u bijna altijd instellen.

Als referentiële integriteit wordt afgedwongen, kunt u alleen een telefoonnummer toevoegen als u een naam hebt in de tabel Klanten. Dit voorkomt dat u WEZEN maakt: gegevens zonder bovenliggende records.

Stelt u zich een verkoopbedrag voor zonder dat hier een order aan is gekoppeld, dan begrijpt u waarom het instellen van referentiële integriteit zo belangrijk is.

De instelling Trapsgewijs bijwerken zorgt dat wijzigingen aan de bovenliggende kant trapsgewijs worden toegepast op gerelateerde records aan de ONDERLIGGENDE of VEEL-kant.

Als een klant bijvoorbeeld zijn naam wijzigt,hoeft u die wijziging alleen in te voeren in de tabel Klanten en alle gerelateerde records worden gewijzigd.

Met de instelling Trapsgewijs verwijderen wordt bepaald of u gegevens kunt verwijderen. Als u deze optie niet selecteert, kunt u gegevens niet verwijderen. Als u deze optie selecteert, wordt alles verwijderd dat is gerelateerd aan die record, wanneer u een record verwijdert.

Als u bijvoorbeeld een klant verwijdert, worden de telefoonnummers van de klant ook verwijderd.

Dat kan goed zijn omdat het wezen voorkomt: telefoonnummers zonder klant. Aan de andere kant moet u er rekening mee houden dat uw bedrijfsregels mogelijk verhinderen dat u gegevens verwijdert, dus houd dit in gedachten. Uw bedrijfsregels kunnen een grote rol spelen in uw databaseontwerp.

Nu weet u meer over tabelrelaties, inclusief het werken in het deelvenster Relaties van Access en de relatie-instellingen waarmee u effectiever met uw Access-database kunt werken.

Uw Office-vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Office Insiders

Was deze informatie nuttig?

Bedankt voor uw feedback.

Hartelijk dank voor uw feedback! Het lijkt ons een goed idee om u in contact te brengen met een van onze Office-ondersteuningsagents.

×