Verwijderquery maken en uitvoeren

Verwijderquery maken en uitvoeren

Als u snel een groot aantal gegevens wilt verwijderen of regelmatig een set gegevens wilt verwijderen in een Access-bureaubladdatabase, kan een verwijder- of bijupdatequery handig zijn omdat u met de query's criteria kunt opgeven om de gegevens snel te vinden en te verwijderen. Het gebruik van een query kan ook tijdbesparend zijn, omdat u een opgeslagen query later opnieuw kunt gebruiken.

Opmerking: Voordat u gegevens verwijdert of een verwijderquery uitvoert, moet u ervoor zorgen dat u een back-up van uw Access-bureaubladdatabase hebt.

Als u slechts enkele records wilt verwijderen, hebt u geen query nodig. U opent de tabel dan in de gegevensbladweergave, selecteert de velden (kolommen) of records (rijen) die u wilt verwijderen, en drukt vervolgens op Delete.

Belangrijk: De informatie in dit artikel is alleen van toepassing voor bureaubladdatabases. U kunt verwijder- of bij werkquery's niet gebruiken in Access-web-apps.

In dit artikel

Een querytype kiezen

Als u gegevens uit uw database wilt verwijderen, kunt u gebruikmaken van een bijwerk- of verwijderquery. Selecteer een query op basis van de gegevens in de volgende tabel:

Type query

Gebruik

Resultaten

Een verwijderquery gebruiken

Als u tegelijkertijd hele records (rijen) uit een tabel of uit twee gerelateerde tabellen wilt verwijderen.

Opmerking: Als de records zich aan de 'een'-kant van een een-op-veel-relatie bevinden, moet u mogelijk eerst de relatie wijzigen voordat u de verwijderquery uitvoert. Raadpleeg het gedeelte over het verwijderen van gegevens uit gerelateerde tabellen.

Met verwijderquery's worden alle gegevens in elk veld verwijderd, inclusief de sleutelwaarde die een record uniek maakt.

Een bijwerkquery gebruiken

Als u afzonderlijke veldwaarden uit een tabel wilt verwijderen.

Hiermee is het gemakkelijker waarden te verwijderen door de bestaande waarden bij te werken naar een null-waarde (dat wil zeggen geen gegevens) of een tekenreeks met lengte nul (een paar dubbele aanhalingstekens zonder spatie ertussen).

Naar boven

Wat u moet controleren voordat u met een query gegevens verwijdert

  • Controleer of het bestand geen alleen-lezen bestand is:

    1. Klik met de rechtermuisknop op Start en klik op File Explorer openen.

    2. Klik met de rechtermuisknop op het databasebestand en klik vervolgens op Eigenschappen.

    3. Controleer of het kenmerk Alleen-lezen is geselecteerd.

  • Controleer of u bevoegd bent om records uit de database te verwijderen. Als u dit niet zeker weet, neemt u contact op met de systeembeheerder of de databaseontwerper.

  • Zorg ervoor dat u de inhoud in de database hebt ingeschakeld. In Access worden alle actiequery's (verwijder-, bijwerk- en tabelmaakquery's) geblokkeerd, tenzij u eerst opgeeft dat u de database vertrouwt. Zie het gedeelte Voorkomen dat een query wordt geblokkeerd door de modus Uitgeschakeld voor informatie over het vertrouwen van databases.

  • Vraag andere gebruikers van de database alle tabellen, formulieren, query's en rapporten te sluiten waarin de gegevens worden gebruikt die u wilt verwijderen. Dit helpt vergrendelingsproblemen te voorkomen.

  • Voordat u records bewerkt of verwijdert, kunt u het beste eerst een back-up van de database maken voor het geval u wijzigingen wilt terugdraaien.

Tip: Als een groot aantal gebruikers verbinding maakt met de database, moet u mogelijk de database sluiten en opnieuw openen in de modus Exclusief.

Een database in de modus Exclusief openen

  1. Klik op het tabblad Bestand > Openen.

  2. Blader naar de database en wijs de database aan om deze te selecteren. Klik op de pijl naast de knop Openen en klik vervolgens op Exclusief openen.

    Een bestand openen in de modus Exclusief

Back-up van de database maken

  1. Klik op het tabblad Bestand en wijs Opslaan als aan.

  2. Klik op Database opslaan als en klik op Back-up maken van de database. Het oorspronkelijke bestand wordt gesloten, er wordt een back-up gemaakt en vervolgens wordt het oorspronkelijke bestand weer geopend.

  3. Klik op Opslaan als, geef een naam en een locatie op voor de back-up op en klik op Opslaan.

Opmerking: Als u werkt met een alleen-lezen database of een database die is gemaakt in de eerdere versie van Access, krijgt u mogelijk een melding dat u geen back-up van de database kunt maken.

U kunt terugkeren naar een back-up door het oorspronkelijke bestand te sluiten en de naam daarvan te wijzigen, zodat u de back-up de naam van de oorspronkelijke versie kunt geven. Geef de back-up de naam van de oorspronkelijke versie en open vervolgens de back-up met de gewijzigde naam in Access.

Een verwijderquery gebruiken

Als u een verwijderquery wilt maken, klikt u op het tabblad Maken in de groep Query's op Queryontwerp. Dubbelklik op elke tabel waaruit u records wilt verwijderen en klik vervolgens op Sluiten.

De tabel wordt weergegeven als venster in het bovenste gedeelte van het queryontwerpraster. Dubbelklik in de lijst met velden op het sterretje (*) om alle velden in de tabel aan het ontwerpraster toe te voegen.

Een specifiek criterium in een verwijderquery gebruiken

Belangrijk: Gebruik criteria om alleen de records die u wilt verwijderen, als resultaat te geven. Anders worden met de verwijderquery alle records in de tabel verwijderd.

Dubbelklik op het veld dat u wilt opgeven als het verwijdercriterium, voer een van de criteria in de rij Criteria van de ontwerpfunctie voor query's in en verwijder vervolgens het selectievakje Weergeven voor elk criteriaveld.

Een voorbeeld van wanneer u deze optie wilt gebruiken: Stel dat u alle in behandeling zijnde orders voor een klant wilt verwijderen. Als u alleen deze records wilt zoeken, voegt u de velden Klant-id en Orderdatum toe aan het queryontwerpraster, waarna u het id-nummer van de klant typt en de datum waarop de orders van die klant ongeldig zijn geworden.

  1. Klik op het tabblad Ontwerpen op Weergave > Gegevensbladweergave.

  2. Controleer of de query de records die u wilt verwijderen, als resultaat geeft en druk vervolgens op Ctrl+S om de query op te slaan.

  3. Voer de query uit door in het navigatiedeelvenster op de query te dubbelklikken.

Naar boven

Een bijwerkquery gebruiken

Opmerking: U kunt de optie Bij werkquery niet gebruiken in een Access-web-app.

In dit gedeelte wordt uitgelegd hoe u een bijwerkquery gebruikt om afzonderlijke velden uit tabellen te verwijderen. Als u een bijwerkquery uitvoert om gegevens te verwijderen, worden de bestaande waarden gewijzigd in NULL of een tekenreeks met lengte nul (een paar aanhalingstekens zonder spatie ertussen), afhankelijk van de criteria die u hebt opgegeven.

  1. Klik op het tabblad Maken in de groep Query's op Queryontwerp.

  2. Selecteer de tabel met de gegevens die u wilt verwijderen (als de tabel gerelateerd is, selecteert u de tabel aan de 'een'-kant van de relatie), klikt u op Toevoegen en klikt u vervolgens op Sluiten.

    De tabel wordt weergegeven als venster in het bovenste gedeelte van het queryontwerpraster. In het venster worden alle velden in de geselecteerde tabel weergegeven.

  3. Dubbelklik op het sterretje (*) om alle velden in de tabel aan het ontwerpraster toe te voegen. Als u alle tabelvelden toevoegt, kan de verwijderquery hele records (rijen) uit de tabel verwijderen.

    U kunt desgewenst criteria invoeren voor een of meer velden in de rij Criteria van de ontwerpfunctie en vervolgens het selectievakje Weergeven voor elk criteriumveld uit. Zie de voorbeeldcriteria voor de tabel Selectiequery's voor meer informatie over het gebruik van criteria.

    Opmerking: U kunt criteria gebruiken om alleen de records die u wilt wijzigen, als resultaat te geven. Anders wordt met de bijwerkquery elke record in alle velden in de query op NULL ingesteld.

  4. Klik op het tabblad Ontwerpen in de groep Resultaten op Weergave en klik vervolgens op Gegevensbladweergave.

  5. Controleer of de query de records als resultaat geeft die u wilt instellen op NULL of een tekenreeks met lengte nul, dat wil zeggen een paar dubbele aanhalingstekens zonder spatie ertussen ("").

  6. Herhaal waar nodig stap 3 tot en met 5 en wijzig de velden of criteria totdat de query alleen de gegevens retourneert die u wilt verwijderen. Druk vervolgens op Ctrl+S om de query op te slaan.

  7. Voer de query uit door in het navigatiedeelvenster op de query te dubbelklikken.

Naar boven

Aanvullende informatie

Gegevens uit gerelateerde tabellen verwijderen

Als u gegevens uit verschillende gerelateerde tabellen wilt verwijderen, moet u de opties Referentiële integriteit en Gerelateerde records trapsgemaal verwijderen voor elke relatie inschakelen. Hiermee kan de query gegevens verwijderen uit de tabellen aan de 'een'- en 'veel'-kant van de relatie. Voor het voorbereiden op het verwijderen van gerelateerde gegevens is verificatie van het volgende vereist:

  • Bepaal welke records zich aan de 'een'-kant van de relatie bevinden en welke aan de 'veel'-kant.

  • Als u records aan de 'een'-kant van de relatie en de gerelateerde records aan de 'veel'-kant moet verwijderen, schakelt u een set regels genaamd referentiële integriteit en het trapsgewijs verwijderen in. Met de stappen in dit gedeelte wordt het begrip referentiële integriteit uitgelegd en wordt beschreven hoe u beide taken uitvoert.

  • Als u alleen records aan de 'een'-kant van de relatie hoeft te verwijderen, verwijdert u eerst die relatie en verwijdert u vervolgens de gegevens.

Als u gegevens alleen aan de 'veel'-kant van de relatie hoeft te verwijderen, kunt u een verwijderquery maken en uitvoeren zonder de relatie te wijzigen.

Als u wilt weten welke records zich aan de 'een'- en 'veel'-kant van een relatie bevinden, klikt u op het tabblad Hulpmiddelen voor databases in de groep Relaties op Relaties. Op het tabblad Relaties worden de tabellen in de database en de relaties weergegeven. Elke relatie wordt weergegeven als een lijn die tabellen tussen velden verbindt.

In de volgende afbeelding ziet u een normale relatie. De meeste, zo niet alle, relaties in een database hebben een 'een'-kant en een 'veel'-kant. In het relatiediagram wordt de 'een'-kant aangegeven met het cijfer één (1) en de 'veel'-kant met het oneindigheidssymbool(∞).

Een relatie tussen twee tabellen

Wanneer u records aan de 'een'-kant van de relatie verwijdert, verwijdert u ook alle gerelateerde records aan de 'veel'-kant van de relatie. Als u echter records aan de 'veel'-kant van de relatie verwijdert, verwijdert u gewoonlijk geen records aan de 'een'-kant.

Ook wordt er in Access automatisch aan een set regels (genaamd referentiële integriteit) voldaan. Deze regels garanderen dat de refererende sleutels in een database de juiste waarden bevatten. Een refererende sleutel is een kolom waarvan de waarden overeenkomen met de waarden in de primaire-sleutelkolom van een andere tabel.

De relatie bewerken

Volg de onderstaande stappen alleen wanneer u gegevens aan de 'een'- of 'veel'-kant van een relatie wilt verwijderen.

  1. Klik op het tabblad Hulpmiddelen voor databases in de groep Relaties op Relaties.

  2. Klik met de rechtermuisknop op de relatie (de lijn) die de tabellen verbindt waarop het verwijderen betrekking heeft en klik vervolgens op Relatie bewerken in het snelmenu.

  3. Zorg ervoor dat in het dialoogvenster Relaties bewerken het selectievakje Referentiële integriteit afdwingen is ingeschakeld.

  4. Schakel het selectievakje Gerelateerde records trapsgewijs verwijderen in.

    Opmerking: Tot u deze eigenschap weer uitschakelt, worden bij het verwijderen van een record aan de 'een'-kant van de relatie alle gerelateerde records aan de 'veel'-kant van de relatie verwijderd.

  5. Klik op OK, sluit het deelvenster Relaties en ga door met de volgende set stappen.

Een relatie verwijderen

  1. Als u dit nog niet hebt gedaan, opent u het deelvenster Relaties.

  2. Klik op het tabblad Hulpmiddelen voor databases in de groep Relaties op Relaties.

    Noteer welke velden betrokken zijn bij de relatie, zodat u de relatie kunt herstellen nadat u de gegevens hebt verwijderd.

  3. Klik met de rechtermuisknop op de relatie (de lijn) die de tabellen verbindt waarop het verwijderen betrekking heeft en klik vervolgens op Verwijderen in het snelmenu.

Opmerking: Als u de relatie wilt herstellen, volgt u de vorige stappen om het deelvenster Relaties te openen, sleept u het primaire-sleutelveld uit de 'een'-tabel en zet u dit neer in het veld met de vreemde sleutel van de tabel 'veel'. Het dialoogvenster Relatie bewerken wordt weergegeven. Als de oude relatie referentiële integriteit afdwingt, selecteert u Referentiëleintegriteit afdwingen en klikt u op Maken. Klik anders op Maken.

Naar boven

Voorbeeldcriteria voor selectiequery's

In de volgende tabel ziet u voorbeeldcriteria die u kunt gebruiken in selectiequery's wanneer u er zeker van wilt zijn dat u alleen de gegevens verwijdert die u wilt verwijderen. Bij sommige voorbeelden worden jokertekens gebruikt.

Criterium

Effect

> 234

Geeft alle getallen groter dan 234 als resultaat. Gebruik < 234 om alle getallen kleiner dan 234 te vinden.

>="Splinter"

Geeft alle records van Splinter tot het einde van het alfabet als resultaat.

Between #02.02.10# And #01.12.10#

Geeft alle datums van 2 februari 2010 tot 1 december 2010 (ANSI-89) als resultaat. Als in uw database de ANSI-92-jokertekens worden gebruikt, gebruikt u enkele aanhalingstekens (') in plaats van hekjes (#). Bijvoorbeeld: Between '02.02.10' And '01.12.10'.

Not "Duitsland"

Hiermee vindt u alle records waarvan de exacte inhoud van het veld niet exact gelijk is aan Duitsland. Het criterium geeft records weer die naast Duitsland nog andere tekens bevatten, zoals Duitsland (euro) of Europa (Duitsland).

Niet "T*"

Hiermee vindt u alle records behalve de records die met een T beginnen. Als in de database de ANSI 92-jokertekenset wordt gebruikt, gebruikt u het procentteken (%) in plaats van het sterretje (*).

Geen "*t"

Hiermee vindt u alle records die niet op t eindigen. Als in de database de ANSI-92-jokertekenset wordt gebruikt, gebruikt u het procentteken (%) in plaats van het sterretje.

In(Canada,GB)

Hiermee zoekt u alle records in een lijst op die Canada of GB bevatten.

Als "[A-D]*"

Hiermee zoekt u in een tekstveld naar alle records die beginnen met een van de letters A tot en met D. Als in uw database de ANSI-92-jokertekenset wordt gebruikt, gebruikt u het procentteken (%) in plaats van het sterretje.

Als "*ar*"

Hiermee vindt u alle records die de letterreeks ar bevatten. Als voor de database de ANSI-92-jokertekens worden gebruikt, geeft u een procentteken (%) op in plaats van het sterretje (*).

Like "Maison Dewe?"

Hiermee vindt u alle records die beginnen met Maison en een tweede tekenreeks van vijf letters bevatten waarvan de eerste vier letters Dewe zijn en de laatste letter onbekend is. Als in uw database de ANSI-92-jokertekenset wordt gebruikt, gebruikt u het onderstrepingsteken(_)in plaats van het vraagteken(?).

#2-2-2010#

Hiermee vindt u alle records met de datum 2 februari 2010. Als in uw database de ANSI-92-jokertekenset wordt gebruikt, zet u de datum tussen enkele aanhalingstekens in plaats van tussen hekjes ('02.02.10').

< Date() - 30

Hiermee gebruikt u de functie Date om alle datums van meer dan 30 dagen geleden te geven.

Datum()

Hiermee gebruikt u de functie Date om alle records te geven die de datum van vandaag bevatten.

Between Date( ) And DateAdd("M", 3, Date( ))

Hiermee gebruikt u de functies Date en DateAdd om alle records vanaf vandaag tot over drie maanden als resultaat te geven.

Is null

Geeft alle records als resultaat die een null-waarde (leeg of ongedefinieerd) bevatten.

Is niet null

Geeft alle records als resultaat die een waarde bevatten (die niet null zijn).

""

Hiermee geeft u alle records als resultaat die een tekenreeks met lengte nul bevatten. U gebruikt tekenreeksen met lengte nul als u een waarde aan een vereist veld moet toevoegen, maar nog niet weet wat de werkelijke waarde is. Het is bijvoorbeeld mogelijk dat voor een bepaald veld een faxnummer vereist is, terwijl sommige van uw klanten geen faxapparaat hebben. In dat geval typt u een paar dubbele aanhalingstekens zonder spatie ertussen ("").

Naar boven

Tips voor het oplossen van problemen

Waarom wordt dit foutbericht weergegeven en hoe corrigeer ik de fout?

Als u een verwijderquery maakt met behulp van meerdere tabellen en de eigenschap Unieke records van de query is ingesteld op Nee,wordt het foutbericht weergegeven. Kan niet verwijderen uit de opgegeven tabellen wanneer u de query uitvoert.

U lost dit probleem op door de eigenschap Unieke records van de query in te stellen op Ja.

  1. Open de verwijderquery in de ontwerpweergave.

  2. Als het eigenschappenvenster van de query niet wordt weergegeven, drukt u op F4 om dit te openen.

  3. Klik op de queryontwerper om de queryeigenschappen (in plaats van de veldeigenschappen) weer te geven.

  4. Zoek in het eigenschappenvenster van de query de eigenschap Unieke records en stel deze in op Ja.

Voorkomen dat een query wordt geblokkeerd door de modus Uitgeschakeld

Als u een bureaubladdatabase opent die u niet vertrouwt of die zich niet op een vertrouwde locatie bevindt, worden in Access standaard alle actiequery's niet uitgevoerd.

Als u een actiequery probeert uit te voeren en het lijkt alsof er niets gebeurt, kunt u kijken of het volgende bericht op de statusbalk van Access staat:

De actie of gebeurtenis is geblokkeerd door de modus Uitgeschakeld.

Wanneer dit bericht wordt weergegeven, voert u de volgende stap uit om de geblokkeerde inhoud in te schakelen:

  • Klik op de berichtenbalk Beveiligingswaarschuwing op Inhoud inschakelen en voer de query nogmaals uit.

Naar boven

Meer hulp nodig?

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-ondersteuningsagenten.

×