Records bewerken in gerelateerde tabellen in een Microsoft Access-database

Nieuwe gebruikers: voor deze procedure moet u vertrouwd zijn met de gebruikersinterface op computers die bedoeld zijn voor één gebruiker.


Dit artikel is alleen van toepassing op Microsoft Access-databases (.MDB).

Samenvatting

In dit artikel leest u hoe u records in gerelateerde tabellen bijwerkt. De volgende onderwerpen komen aan bod:

  • Gegevens toevoegen of bewerken in een gegevensblad (tabel of query) of formulier

  • Een record opslaan in een gegevensblad of formulier

  • Een record verwijderen in een gegevensblad of formulier

  • Het toevoegen of bewerken van gegevens in een gegevensblad of formulier ongedaan maken

  • Referentiële integriteit

  • Trapsgewijs bijwerken en trapsgewijs verwijderen

  • Gegevens beperken of valideren

  • Subgegevensbladen

  • Wanneer u gegevens uit een query kunt bijwerken

Meer informatie

Gegevens toevoegen of bewerken in een gegevensblad (tabel of query) of formulier

  1. Open een tabel of query in de gegevensbladweergave of een formulier in de formulierweergave.

  2. Voer een van de volgende bewerkingen uit:

    • Als u een nieuwe record wilt toevoegen, wijst u Ga naar in het menu Bewerken aan en klikt u op Nieuwe record. Typ de gegevens en druk op TAB om naar het volgende veld te gaan. Druk aan het einde van de record op TAB om naar de volgende record te gaan.

    • Als u gegevens in een veld wilt bewerken, klikt u in het betreffende veld en typt u de gegevens.

    • Als u de hele waarde wilt vervangen, verplaatst u de aanwijzer naar het linkergedeelte van het veld tot de aanwijzer in een plusteken verandert, en klikt u. Typ de gegevens.

    Opmerking Druk op BACKSPACE als u een typefout wilt verbeteren. Druk op ESC als u de wijzigingen in het huidige veld wilt annuleren. Druk nogmaals op ESC voordat u de aanwijzer buiten het veld plaatst als u de wijzigingen in de hele record wilt annuleren. Wanneer u naar een andere record gaat, worden de wijzigingen in Microsoft Access opgeslagen.

Een record opslaan in een gegevensblad of formulier

De record die u toevoegt of bewerkt wordt automatisch in Microsoft Access opgeslagen zodra u de invoegpositie in een andere record plaatst of het formulier of de tabel waarin u werkt, opslaat.

Als u de gegevens in een record expliciet wilt opslaan terwijl u deze bewerkt, kiest u Record opslaan in het menu Records.

Een record verwijderen in een gegevensblad of formulier

  1. Open een tabel of query in de gegevensbladweergave of een formulier in de formulierweergave.

  2. Klik op de record die u wilt verwijderen.

  3. Open het menu Bewerken en klik op Record verwijderen. Opmerking Wanneer u gegevens verwijdert, wilt u misschien gerelateerde gegevens in andere tabellen verwijderen. Als u bijvoorbeeld een leverancier verwijdert, wilt u waarschijnlijk ook de producten van deze leverancier verwijderen. In enkele gevallen kunt u ervoor zorgen dat de juiste gegevens worden verwijderd door referentiële integriteit af te dwingen en trapsgewijze verwijderingen in te schakelen. Referentiële integriteit en trapsgewijs bijwerken en verwijderen worden verderop in dit artikel nader uiteengezet.

Het toevoegen of bewerken van gegevens in een gegevensblad of formulier ongedaan maken

Voer een van de volgende bewerkingen uit:

  • Kies Ongedaan maken in het menu Bewerken als u de meest recente wijziging ongedaan wilt maken.

  • Als u al wijzigingen in de huidige record hebt opgeslagen of de aanwijzer in een andere record hebt geplaatst, kiest u Record opslaan ongedaan maken in het menu Bewerken. Opmerking Deze methoden kunt u niet gebruiken om wijzigingen te corrigeren wanneer u een andere record begint te bewerken, een filter toepast of verwijdert of naar een ander venster gaat.

Referentiële integriteit

Referentiële integriteit is een systeem van regels dat in Microsoft Access wordt gebruikt om ervoor te zorgen dat relaties tussen records in gerelateerde tabellen geldig zijn, en u niet per ongeluk gerelateerde gegevens verwijdert of verandert. De volgende regels zijn van toepassing wanneer u referentiële integriteit gebruikt:

  • U kunt in het veld met de refererende sleutel van de gerelateerde tabel geen waarde invoeren die niet in de primaire sleutel van de primaire tabel bestaat. U kunt echter een nulwaarde in de refererende sleutel invoeren om aan te geven dat de records geen relatie hebben. Er kan bijvoorbeeld geen order zijn die is toegekend aan een niet-bestaande klant. Er kan echter wel een order zijn die aan niemand is toegekend door in het veld KlantID een nulwaarde in te voeren.

  • U kunt een record niet uit een primaire tabel verwijderen als een gerelateerde tabel records bevat die aan deze record zijn gerelateerd. U kunt bijvoorbeeld een werknemersrecord niet uit de tabel Werknemers verwijderen als aan deze werknemer in de tabel Orders orders zijn toegekend.

  • U kunt een primaire-sleutelwaarde in de primaire tabel niet verwijderen als aan deze record andere records zijn gerelateerd. U kunt bijvoorbeeld de ID van een werknemer in de tabel Werknemers niet wijzigen als aan deze werknemer in de tabel Orders orders zijn toegekend.

Trapsgewijs bijwerken en trapsgewijs verwijderen

Voor relaties waarvoor referentiële integriteit is afgedwongen, kunt u opgeven of gerelateerde records in Microsoft Access automatisch trapsgewijs moeten worden bijgewerkt en verwijderd. Als u deze opties instelt, worden verwijderingen en updates toegestaan die normaliter niet mogelijk zijn vanwege de referentiële integriteitsregels. Wanneer u records verwijdert of primaire-sleutelwaarden wijzigt in een primaire tabel, worden de noodzakelijke wijzigingen door Microsoft Access in de gerelateerde tabellen aangebracht om de referentiële integriteit te handhaven.

Als u bij de definitie van een relatie het selectievakje Gerelateerde velden trapsgewijs bijwerken hebt ingeschakeld en u de primaire sleutel van een record in de primaire tabel verandert, wordt de primaire sleutel in alle gerelateerde records automatisch door Microsoft Access ingesteld op de nieuwe waarde. Als u bijvoorbeeld de ID van een klant in de tabel Klanten verandert, wordt het veld KlantID van de tabel Orders automatisch bijgewerkt voor elke orderrecord van die klant zodat de relatie niet wordt verbroken. De trapsgewijze bewerkingen worden in Microsoft Access uitgevoerd zonder dat een bericht wordt weergegeven.


Opmerking Als de primaire sleutel in de primaire tabel een veld van het type Autonummering is, heeft het instellen van het selectievakje Gerelateerde velden trapsgewijs bijwerken geen effect omdat u de waarde van een veld van het type Autonummering niet kunt wijzigen.

Als u bij de definitie van een relatie het selectievakje Gerelateerde velden trapsgewijs bijwerken hebt ingeschakeld en u records in de primaire tabel verwijdert, worden automatisch ook de gerelateerde records in de gerelateerde tabel verwijderd. Als u bijvoorbeeld een klantrecord uit de tabel Klanten verwijdert, worden automatisch de orders van de klant uit de tabel Orders verwijderd (inclusief records in de tabel Orderdetails die aan de orderrecords zijn gerelateerd). Wanneer u records uit een formulier of gegevensblad verwijdert terwijl het selectievakje Gerelateerde velden trapsgewijs bijwerken is geselecteerd, wordt in Microsoft Access een waarschuwing weergegeven dat ook de gerelateerde records worden verwijderd. Wanneer u echter records met een verwijderquery verwijdert, worden de records in gerelateerde tabellen echter verwijderd zonder dat een waarschuwing wordt weergegeven.


Voor meer informatie over relaties klikt u op de volgende artikelnummers in de Microsoft Knowledge Base:

304466Definitie van relaties tussen tabellen in een Microsoft Access-database

304469Relaties in een Microsoft Access-database weergeven en bewerken

Gegevens beperken of valideren

Microsoft Access kent een aantal manieren om te controleren hoe een gebruiker gegevens in een database invoert. U kunt bijvoorbeeld de gegevens beperken die een gebruiker in een veld invoert door een validatieregel voor dat veld te definiëren. Als de gegevens die een gebruiker in het veld invoert, niet aan de regels voldoen, wordt in een bericht gemeld welke type invoer is toegestaan. Een andere methode om de gegevensinvoer te controleren, is het maken van een invoermasker om te beperken welke typen waarden op posities in het veld kunnen worden ingevoerd. U kunt deze eenvoudige vormen van validatie en beperking uitvoeren door eigenschappen voor velden in tabellen in te stellen of door eigenschappen voor besturingselementen op formulieren in te stellen.

In de meeste gevallen is het aan te raden om gegevensvalidatie en -beperking te definiëren door de eigenschappen van een veld in te stellen in de ontwerpweergave van de tabel. Op die manier worden telkens wanneer u dat veld in een formulier gebruikt, de validatieregels en andere eigenschappen toegepast op de gegevensinvoer die via het formulier wordt uitgevoerd.

Als u echter de invoer moet beperken of valideren van gegevens die worden ingevoerd in een besturingselement op een formulier dat niet gekoppeld is aan een veld in een tabel, moet u deze eigenschappen in het formulier definiëren. Bovendien zijn er situaties waarin u macro's of VBA-code (Microsoft Visual Basic for Applications) met een formulier moet gebruiken om complexere validatie uit te voeren. Misschien wilt u bijvoorbeeld uw validatieregel kunnen negeren of waarden uit verschillende tabellen kunnen vergelijken.

Voor meer informatie over validatie in tabellen en formulieren klikt u op Microsoft Access Help in het menu Help. Typ valideren in de Office-assistent of de Antwoordwizard en klik op Zoeken om de gevonden onderwerpen weer te geven.

Subgegevensbladen

In een subgegevensblad kunt u gerelateerde of samengevoegde gegevens weergeven en bewerken in een tabel, query, formuliergegevensblad of subformulier. Zo heeft de tabel Leveranciers in de voorbeelddatabase Noordenwind een een-op-veel-relatie met de tabel Producten. Daarom kunt u voor elke rij in de tabel Leveranciers in de gegevensbladweergave de gerelateerde rijen van de tabel Producten in een subgegevensblad weergeven en bewerken. Klik op het uitvouwteken om een subgegevensblad uit te vouwen of samen te vouwen.


Bezoek de volgende Microsoft-website voor meer informatie over subgegevensbladen in Microsoft Access:

Access 2002 Online Help: SubgegevensbladenVoor meer informatie over subgegevensbladen in tabellen en formulieren klikt u op Microsoft Access Help in het menu Help. Typ subgegevensbladen in de Office-assistent of de Antwoordwizard en klik op Zoeken om de gevonden onderwerpen weer te geven.

Wanneer u gegevens uit een query kunt bijwerken

In sommige gevallen kunt u queryresultaten in de gegevensbladweergave bewerken om de gegevens in de onderliggende tabel te wijzigen. In andere gevallen is dat niet mogelijk. De volgende informatie laat zien wanneer de resultaten van een query kunnen worden bijgewerkt en zo niet, of er een alternatief is.

Gegevens kunnen worden bijgewerkt:

In de volgende gevallen kunt u een query of queryveld bijwerken:

  • Een query op basis van één tabel

  • Een query op basis van tabellen met een een-op-een-relatie

  • De resultaten van een query bevatten een memo-, hyperlink- of OLE-object

Gegevens kunnen onder bepaalde omstandigheden worden bijgewerkt:

Als een query is gebaseerd op tabellen met een een-op-veel-relatie, kunt u de gegevens voor sommige queryvelden niet bewerken of wordt het volgende foutbericht weergegeven:

Kan recordjoinsleutel van tabel tabelnaam niet toevoegen in recordset.

De volgende tabel geeft een overzicht van de queryvelden die u niet kunt bijwerken in dit scenario.

Queryveld

Oplossing

Joinveld uit de 'een'-zijde

Schakel trapsgewijs bijwerken in tussen de twee tabellen.

Nieuwe records, als het joinveld aan de 'veel'-zijde niet in het gegevensblad voorkomt

Voeg het joinveld uit de 'veel'-zijde aan de query toe om het toevoegen van nieuwe records toe te staan.

Joinveld uit de 'veel'-zijde nadat u gegevens aan de 'een'-zijde hebt bijgewerkt

Nadat u de record hebt opgeslagen, kunt u wijzigingen aanbrengen in het joinveld aan de 'veel'-zijde.

Leeg veld uit de tabel aan de 'een'-zijde van een een-op-veel-relatie waar een outer join bestaat

Typ waarden in velden uit de tabel aan de 'veel'-zijde, maar alleen als het gekoppelde veld uit de 'een'-zijde een waarde voor die record bevat.

Nieuwe records, als geheel unieke sleutel van ODBC-tabel niet is uitgevoerd

Selecteer alle primaire-sleutelvelden van ODBC-tabellen om invoegingen in de velden toe te staan.



Gegevens kunnen wel worden verwijderd, maar niet worden bijgewerkt:

Query of queryveld

Oplossing

Query (of onderliggende tabel) waarvoor de machtiging Gegevens bijwerken niet is toegekend

Gegevens kunnen alleen worden gewijzigd als machtigingen zijn toegekend.

Query (of onderliggende tabel) waarvoor de machtiging Gegevens verwijderen niet is toegekend

Gegevens kunnen alleen worden verwijderd als machtigingen zijn toegekend.



Gegevens kunnen niet worden bijgewerkt:

Query of queryveld

Oplossing

Query op basis van drie of meer tabellen waarin een veel-op-een-op-veel-relatie bestaat

Hoewel u de gegevens in de query niet rechtstreeks kunt bijwerken, kunt u ze wel bijwerken in een formulier of Data Access-pagina op basis van de query als de eigenschap TypeRecordset van het formulier is ingesteld op Dynaset (Inconsistent bijwerken).

Kruistabelquery

Geen

SQL pass-through-query

Geen

Query die een som, gemiddelde, aantal of ander type totaal berekent voor de waarden in een veld, of een updatequery die verwijst naar een Wijzigen in-veld uit een kruistabelquery, selectiequery of subquery die totalen of statistische functies bevat.

Door in de Wijzigen in-rij van een bijwerkquery een statistische domeinfunctie te gebruiken, kunt u naar velden verwijzen vanuit een kruistabelquery, selectiequery of subquery die totalen of statistische functies bevat.

Samenvoegquery

Geen

Query waarvan de eigenschap UniekeWaarden is ingesteld op Ja

Geen

Query die een gekoppelde ODBC-tabel zonder unieke index, of een Paradox-tabel zonder primaire sleutel bevat

Geen

Query die meer dan één tabel of query bevat en waarbij de tabellen of query's in de ontwerpweergave niet met een joinlijn zijn gekoppeld

U moet de tabellen op de juiste wijze koppelen om ze te kunnen bijwerken.

Berekend veld

Geen

Veld is alleen-lezen; de database is als alleen-lezen geopend of bevindt zich op een alleen-lezenstation

Geen

Veld in record die is verwijderd of vergrendeld door een andere gebruiker

Een vergrendelde record moet bijgewerkt kunnen worden zodra de vergrendeling is opgeheven.

Referenties

Bezoek de volgende Microsoft-website voor meer informatie over relaties in een Access-database:

Access 2002 Online Help: Relaties in een Access-database Voor meer informatie over het bijwerken van gegevens in een query klikt u op Microsoft Access Help in het menu
Help. Typ wanneer kan ik gegevens uit een query bijwerken in de Office-assistent of de Antwoordwizard en klik op
Zoeken om de gevonden onderwerpen weer te geven.

Meer hulp nodig?

Uw vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Microsoft 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-ondersteuningsagenten.

×