Erstellen und Ausführen einer Löschabfrage

Wichtig :  Dieser Artikel wurde maschinell übersetzt. Bitte beachten Sie den Haftungsausschluss. Die englische Version des Artikels ist als Referenz hier verfügbar: hier.

Wenn Sie schnell eine große Datenmenge löschen oder eine Gruppe von Daten in regelmäßigen Abständen in einer Access-Desktopdatenbank löschen möchten, kann ein löschen oder eine Aktualisierungsabfrage nützlich sein, da die Abfragen ermöglichen Kriterien zum schnellen Suchen und löschen Sie die Daten angeben. Mithilfe einer Abfrage kann auch eine sparen sein, da Sie eine gespeicherte Abfrage wiederverwenden können.

Hinweis : Bevor Sie Daten löschen oder eine Löschabfrage ausführen möchten, stellen Sie sicher, dass Sie eine Sicherungskopie Ihrer Access-desktop-Datenbank haben.

Wenn Sie nur einige wenige Datensätze löschen möchten, brauchen Sie keine Abfrage. Öffnen Sie einfach die Tabelle in der Datenblattansicht, wählen Sie die zu löschenden Felder (Spalten) oder Datensätze (Zeilen) aus, und drücken Sie dann die Taste ENTF.

Wichtig : Die Informationen in diesem Artikel wird nur für Desktopdatenbanken gelten. Löschen können nicht oder Abfragen in Access Web apps zu aktualisieren.

Inhalt dieses Artikels

Auswählen eines Abfragetyps

Verwenden einer Löschabfrage

Verwenden einer Aktualisierungsabfrage

Weitere Informationen

Tipps zur Problembehandlung

Auswählen eines Abfragetyps

Sie können Daten mithilfe einer Aktualisierungsabfrage oder einer Löschabfrage aus der Datenbank löschen. Wählen Sie anhand der Informationen in der folgenden Tabelle eine geeignete Abfrage aus:

Abfragetyp

Verwendung

Ergebnisse

Verwenden einer Löschabfrage

Sie möchten ganze Datensätze (Zeilen) aus einer Tabelle oder gleichzeitig aus zwei verknüpften Tabellen löschen.

Hinweis : Falls sich die zu löschenden Datensätze auf der 1-Seite einer 1:n-Beziehung befinden, müssen Sie u. U. die Beziehung ändern, damit Sie die Löschabfrage ausführen können. Entsprechende Informationen finden Sie im Abschnitt zum Löschen von Daten aus verknüpften Tabellen.

Löschabfragen entfernen alle Daten in den einzelnen Felder (auch den Schlüsselwert, der für die Eindeutigkeit eines Datensatzes sorgt).

Verwenden einer Aktualisierungsabfrage

Sie möchten einzelne Feldwerte aus einer Tabelle löschen.

Aktualisierungsabfragen vereinfachen das Löschen von Werten, indem die vorhandenen Werte entweder in einen Nullwert (Wert ohne Daten) oder in eine leere Zeichenfolge (ein Paar doppelter Anführungszeichen ohne Zeichen dazwischen) geändert werden.

Seitenanfang

Punkte, die vor dem Löschen von Daten mit einer Abfrage überprüft werden müssen

  • Vergewissern Sie sich, dass die Datei nicht schreibgeschützt ist:

    1. Klicken Sie mit der rechten Maustaste auf Start und dann auf Datei-Explorer öffnen.

    2. Klicken Sie mit der rechten Maustaste auf die Datenbankdatei und dann auf Eigenschaften.

    3. Stellen Sie fest, ob das Attribut Schreibgeschützt aktiviert ist.

  • Überprüfen Sie, ob Sie über die erforderlichen Berechtigungen verfügen, um Datensätze aus der Datenbank zu löschen. Wenden Sie sich an den Systemadministrator oder an den Datenbankdesigner, wenn Sie sich nicht sicher sind.

  • Vergewissern Sie sich, dass der Inhalt in der Datenbank aktiviert ist. Standardmäßig blockiert Access alle Aktionsabfragen (Lösch-, Aktualisierungs-, und Tabellenerstellungsabfragen), wenn die Tabelle nicht als vertrauenswürdig angesehen wird. Informationen zum Einstufen einer Datenbank als vertrauenswürdig finden Sie im Abschnitt Beenden des Modus "Deaktiviert", damit Abfragen nicht blockiert werden.

  • Bitten Sie die anderen Benutzer der Datenbank, sämtliche Tabellen, Formulare, Abfragen und Berichte zu schließen, die die zu löschenden Daten verwenden. Auf diese Weise können Sperrenfehler vermieden werden.

  • Erstellen Sie vor dem Bearbeiten oder Löschen von Datensätzen eine Sicherungskopie der Datenbank, damit die Änderungen ggf. rückgängig gemacht werden können.

Tipp : Wenn eine große Anzahl Benutzer zu der Datenbank herstellen, müssen Sie möglicherweise die Datenbank möglicherweise schließen und erneut in öffnen exklusiven Modus.

So öffnen Sie eine Datenbank im Exklusivmodus

  1. Klicken Sie auf die Registerkarte Datei > Öffnen.

  2. Navigieren Sie zur gewünschten Datenbank und wählen Sie diese aus. Klicken Sie auf den Pfeil neben der Schaltfläche Öffnen und dann auf Exklusiv öffnen.

    Öffnen der Datei im exklusiven Modus

Sichern der Datenbank

  1. Klicken Sie auf die Registerkarte Datei, und zeigen Sie auf Speichern unter.

  2. Klicken Sie auf Datenbank speichern als und dann auf Datenbank sichern. Access schließt die Originaldatei, erstellt eine Sicherungskopie und öffnet die Originaldatei wieder.

  3. Klicken Sie auf Speichern unter, geben Sie einen Namen und einen Speicherort für die Sicherungskopie an, und klicken Sie auf Speichern.

Hinweis :  Wenn Sie eine schreibgeschützte Datenbank oder eine Datenbank verenden, die in einer früheren Version von Access erstellt wurde, wird u. U. eine Meldung mit dem Hinweis angezeigt, dass keine Sicherungskopie der Datenbank erstellt werden kann.

Schließen Sie die Originaldatei, und weisen Sie einen anderen Namen zu, um eine vorhandene Sicherungskopie verwenden zu können, damit der Name der Originalversion für die Sicherungskopie verwendet werden kann. Weisen Sie der Sicherungskopie den Namen der Originalversion zu, und öffnen Sie die umbenannte Sicherungskopie in Access.

Verwenden einer Löschabfrage

Wenn Sie eine Löschabfrage erstellen möchten, klicken Sie auf die Erstellen Registerkarte in der Gruppe Abfragen, klicken Sie auf Abfrageentwurf. In der im Dialogfeld Tabelle anzeigen Feld, doppelklicken Sie auf jede Tabelle, von dem aus Sie Datensätze löschen, und klicken Sie dann auf Schließen.

Die Tabelle wird im oberen Teil des Abfrageentwurfsbereichs als Fenster angezeigt. Doppelklicken Sie in der Liste der Felder auf das Sternchen (*), um alle Felder in der Tabelle zum Entwurfsbereich hinzuzufügen.

Verwenden bestimmter Kriterien in einer Löschabfrage

Wichtig : Sie müssen Kriterien verwenden, damit nur die Datensätze zurückgegeben werden, die gelöscht werden sollen. Andernfalls entfernt die Löschabfrage alle Datensätze in der Tabelle.

Doppelklicken Sie auf das Feld, das Sie angeben, wie die Kriterien zum Löschen, geben Sie eine die Kriterien in der Zeile Kriterien der Abfrage-Designer, und klicken Sie dann auf Löschen der Kontrollkästchen für jedes Kriterienfeld Anzeigen.

Sie können diese Option beispielsweise verwenden, wenn alle ausstehenden Bestellungen eines Kunden gelöscht werden sollen. Um die betreffenden Datensätze zu finden, fügen Sie die Felder Kunden-ID und Auftragsdatum zum Abfrageentwurfsbereich hinzu. Geben Sie anschließend die ID-Nummer des Kunden und das Datum ein, an dem die Bestellungen des Kunden ungültig wurden.

  1. Klicken Sie auf der Registerkarte Entwurf auf Ansicht > Datenblattansicht.

  2. Überprüfen Sie, ob die Abfrage die Datensätze zurückgibt, die gelöscht werden sollen, und drücken Sie STRG+S, um die Abfrage zu speichern.

  3. Doppelklicken Sie im Navigationsbereich auf die Abfrage, um die Abfrage auszuführen.

Seitenanfang

Verwenden einer Aktualisierungsabfrage

Hinweis : Sie können in einer Access Web app keine Aktualisierungsabfragen verwenden.

In diesem Abschnitt wird erläutert, wie Sie mithilfe einer Aktualisierungsabfrage einzelne Felder aus Tabellen löschen. Denken Sie daran, dass durch das Ausführen einer Aktualisierungsabfrage zum Löschen von Daten die vorhandenen Werte abhängig von den festgelegten Kriterien entweder in NULL oder in eine leere Zeichenfolge (ein Paar doppelter Anführungszeichen ohne Zeichen dazwischen) geändert werden.

  1. Klicken Sie auf der Registerkarte Erstellen in der Gruppe Abfragen auf Abfrageentwurf.

  2. Wählen Sie die Tabelle mit den Daten aus, die Sie löschen möchten. (Wählen Sie bei einer verknüpften Tabelle die Tabelle auf der 1-Seite der 1:n-Beziehung aus.) Klicken Sie auf Hinzufügen und dann auf Schließen.

    Die Tabelle wird im oberen Teil des Abfrageentwurfsbereichs als Fenster angezeigt. In diesem Fenster sind alle Felder der ausgewählten Tabelle aufgeführt.

  3. Doppelklicken Sie auf das Sternchen (*), um alle Felder in der Tabelle zum Entwurfsbereich hinzuzufügen. Wenn alle Tabellenfelder hinzugefügt werden, kann die Löschabfrage ganze Datensätze (Zeilen) aus der Tabelle entfernen.

    In der Zeile Kriterien des Designers können Sie Kriterien für ein Feld oder mehrere Felder eingeben. Deaktivieren Sie anschließend das Kontrollkästchen Anzeigen für die einzelnen Kriterienfelder. Weitere Informationen zum Verwenden von Kriterien finden Sie in der Tabelle Beispielkriterien für Auswahlabfragen.

    Hinweis : Die Kriterien werden verwendet, damit nur die zu ändernden Datensätze zurückgegeben werden. Sonst legt die Aktualisierungsabfrage in allen Datensätzen alle Felder in der Abfrage auf NULL fest.

  4. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Ergebnisse auf Ansicht und dann auf Datenblattansicht.

  5. Stellen Sie sicher, dass die Abfrage die Datensätze zurückgibt, die auf NULL oder eine Zeichenfolge der Länge 0 (null) gesetzt werden soll (ein Paar doppelter Anführungszeichen ohne Leerzeichen ("").

  6. Je nach Bedarf, wiederholen Sie die Schritte 3 bis 5, und ändern Sie die Felder oder Kriterien, bis die Abfrage nur die Daten, die Sie löschen möchten zurückgibt, drücken Sie STRG + S, um die Abfrage zu speichern.

  7. Doppelklicken Sie im Navigationsbereich auf die Abfrage, um die Abfrage auszuführen.

Seitenanfang

Weitere Informationen

Löschen von Daten aus verknüpften Tabellen

Wenn Sie Daten aus mehreren verknüpften Tabellen löschen möchten, müssen Sie die Optionen Referentielle Integrität und Löschweitergabe an verwandte Datensätze für jede Beziehung aktivieren. Dadurch können mit der Abfrage Daten aus der Tabelle auf den 1- und n-Seiten der Beziehung gelöscht werden. Um das Löschen von verknüpften Daten vorzubereiten, müssen Sie:

  • Bestimmen, welche Datensätze sich auf der 1-Seite der Beziehung befinden und welche sich auf der n-Seite befinden.

  • Bestimmte Regeln (referentielle Integrität) und Löschweitergaben aktivieren, wenn Datensätze, die sich auf der 1-Seite der Beziehung befinden, und die verknüpften Datensätze auf der n-Seite gelöscht werden sollen. Die Schritte in diesem Abschnitt erläutern die referentielle Integrität sowie die Vorgehensweise zum Ausführen beider Aufgaben.

  • Zuerst die Beziehung löschen, wenn nur Datensätze auf der 1-Seite der Beziehung gelöscht werden müssen, und dann die Daten löschen.

Wenn nur Daten auf der n-Seite der Beziehung entfernt werden müssen, können Sie die Löschabfrage erstellen und ausführen, ohne die Beziehung ändern zu müssen.

Um festzustellen, welche Datensätze sich auf der 1- Seite und auf der n-Seite einer Beziehung befinden, klicken Sie auf der Registerkarte Datenbanktools in der Gruppe Beziehungen auf Beziehungen. Auf der Registerkarte Beziehungen werden die Tabellen in der Datenbank und die Beziehungen angezeigt. Jede Beziehung wird als Linie dargestellt, die Tabellen zwischen Feldern verbindet.

In der folgenden Abbildung wird eine typische Beziehung dargestellt. Die meisten, wenn nicht alle, Beziehungen in einer Datenbank verfügen über eine 1-Seite und eine n-Seite. Im Beziehungsdiagramm ist die 1-Seite mit der numerischen eins gekennzeichnet (1) und die n-Seite mit dem Unendlichkeitszeichen ().

Eine Beziehung zwischen zwei Tabellen

Wenn Sie Datensätze auf der 1-Seite der Beziehung löschen, werden auch alle verknüpften Datensätze auf der n-Seite der Beziehung gelöscht. Wenn Sie jedoch Datensätze auf der n-Seite einer Beziehung löschen, werden in der Regel keine Datensätze auf der 1-Seite gelöscht.

Außerdem erzwingt Access Regeln, die als referentielle Integrität bezeichnet werden. Durch diese Regeln wird sichergestellt, dass Fremdschlüssel in einer Datenbank die richtigen Werte enthalten. Ein Fremdschlüssel ist eine Spalte, deren Werte den Werten in der Primärschlüsselspalte einer anderen Tabelle entsprechen.

Bearbeiten der Beziehung

Führen Sie die folgenden Schritten nur aus, wenn Sie Daten auf einer der 1- und n-Seiten einer Beziehung löschen müssen.

  1. Klicken Sie auf der Registerkarte Datenbanktools in der Gruppe Beziehungen auf Beziehungen.

  2. Klicken Sie mit der rechten Maustaste auf die Beziehung (Linie), die die vom Löschvorgang betroffenen Tabellen verbindet, und klicken Sie dann im Kontextmenü auf Beziehung bearbeiten.

  3. Vergewissern Sie sich, dass im Dialogfeld Beziehungen bearbeiten das Kontrollkästchen Mit referentieller Integrität aktiviert ist.

  4. Aktivieren Sie das Kontrollkästchen Löschweitergabe an verwandte Datensätze.

    Hinweis : Wenn Sie einen Datensatz auf der 1-Seite der Beziehung löschen, werden alle verknüpften Datensätze auf der n-Seite der Beziehung gelöscht, bis Sie diese Eigenschaft wieder deaktivieren.

  5. Klicken Sie auf OK, schließen Sie den Bereich Beziehungen, und führen Sie die nächsten Schritte durch.

Löschen einer Beziehung

  1. Öffnen Sie den Bereich Beziehungen, wenn dies noch nicht erfolgt ist.

  2. Klicken Sie auf der Registerkarte Datenbanktools in der Gruppe Beziehungen auf Beziehungen.

    Notieren Sie die Felder in der Beziehung, sodass Sie die Beziehung nach dem Löschen der Daten wiederherstellen können.

  3. Maustaste die Beziehung (Linie), die vom Löschvorgang betroffenen Tabellen verbindet, und klicken Sie dann auf im Kontextmenü auf Löschen.

Hinweis : Führen Sie zum Wiederherstellen der Beziehung die obigen Schritte zum Öffnen des Bereichs Beziehungen aus, und ziehen Sie dann das Primärschlüsselfeld von der 1-Tabelle auf den Fremdschlüsselfeld der n-Tabelle ab. Das Dialogfeld Beziehungen bearbeiten wird geöffnet. Wenn die alte Beziehung referentielle Integrität erzwungen hat, aktivieren Sie Mit referentieller Integrität, und klicken Sie auf Erstellen. Klicken Sie sonst nur auf Erstellen.

Seitenanfang

Beispielkriterien für Auswahlabfragen

In der folgenden Tabelle sind einige Beispielkriterien aufgeführt, mit denen Sie in Auswahlabfragen sicherstellen können, dass nur die gewünschten Daten gelöscht werden. In einigen dieser Beispiele werden Platzhalterzeichen verwendet.

Kriterien

Auswirkung

> 234

Gibt alle Zahlen größer als 234 zurück. Verwenden Sie < 234, um nach allen Zahlen zu suchen, die kleiner als 234 sind.

>= "Motte"

Gibt alle Datensätze ab Motte bis zum Ende des Alphabets zurück.

Zwischen #2.2.2010# Und #1.12.2010#

Gibt jedes Datum vom 2. Februar 2010 bis zum 1. Dezember 2010 (ANSI-89) zurück. Wenn in der Datenbank ANSI-92-Platzhalterzeichen verwendet werden, verwenden Sie einfache Anführungszeichen (') statt Nummernzeichen (#). Beispiel: Zwischen '2.2.2010' Und '1.12.2010'

Nicht "Deutschland"

Findet alle Datensätze, in denen die genauen Inhalte des Felds nicht "Deutschland" entsprechen. Durch das Kriterium werden Datensätze zurückgegeben, die neben "Deutschland" noch weitere Zeichen enthalten, z. B. "Deutschland (Euro)" oder "Europa (Deutschland)".

Nicht "T*"

Findet alle Datensätze außer jenen, die mit "T" beginnen. Wenn in der Datenbank der ANSI-92-Platzhalterzeichensatz verwendet wird, verwenden Sie das Prozentzeichen (%) statt des Sternchens (*).

Nicht "*t"

Findet alle Datensätze, die nicht auf "t" enden. Verwenden Sie das Prozentzeichen (%) anstelle des Sternchens (*), wenn Ihre Datenbank den ANSI-92-Platzhalter-Zeichensatz verwendet.

In(Kanada,GB)

Findet in einer Liste alle Datensätze, die "Kanada" oder "GB" enthalten.

Wie "[A-D]*"

Findet in einem Textfeld alle Datensätze, die mit den Buchstaben A bis D anfangen. Wenn in der Datenbank ANSI-92-Platzhalterzeichen verwendet werden, fügen Sie anstelle des Sternchens (*) das Prozentzeichen (%) ein.

Wie "*ar*"

Ruft alle Datensätze ab, die die Buchstabenfolge "ar" enthalten. Wenn in der Datenbank ANSI-92-Platzhalterzeichen verwendet werden, fügen Sie anstelle des Sternchens (*) das Prozentzeichen (%) ein.

Wie "Maison Dewe?"

Findet alle Datensätze, die mit "Maison" beginnen und eine zweite aus 5 Buchstaben bestehende Zeichenfolge enthalten, deren erste 4 Buchstaben "Dewe" lauten und deren letzter Buchstabe unbekannt ist. Wenn in der Datenbank der ANSI-92-Platzhalterzeichensatz verwendet wird, verwenden Sie einen Unterstrich (_) statt des Fragezeichens (?).

#2.2.2010#

Findet alle Datensätze für den 2. Februar 2010. Wenn Ihre Datenbank den ANSI-92-Platzhalter-Zeichensatz verwendet, schließen Sie das Datum in einfache Anführungszeichen anstelle von Nummernzeichen ein ('2.2.2006').

< Datum() - 30

Gibt mit der Funktion Datum alle Daten zurück, die mehr als 30 Tage zurückliegen.

Datum()

Gibt mit der Funktion Datum alle Datensätze mit dem Tagesdatum zurück.

Zwischen Datum() und DateAdd("M", 3, Datum())

Gibt mit den Funktionen Datum und DateAdd alle Datensätze zwischen heute und heute in drei Monaten zurück.

Ist Null

Gibt alle Datensätze zurück, die einen (leeren oder nicht definierten) NULL-Wert enthalten.

Ist Nicht Null

Gibt alle Datensätze zurück, die einen beliebigen Wert enthalten (also keine Nullwerte).

""

Gibt alle Datensätze zurück, die eine leere Zeichenfolge enthalten. Zeichenfolgen der Länge Null werden verwendet, wenn Sie einem erforderlichen Feld einen Wert hinzufügen müssen, den richtigen Wert jedoch noch nicht kennen. Beispielsweise muss in ein Feld möglicherweise eine Faxnummer eingetragen werden, allerdings verfügen einige Kunden möglicherweise nicht über ein Faxgerät. In diesem Fall werden statt einer Nummer ein Paar doppelter Anführungszeichen ohne Leerstelle dazwischen ("") eingegeben.

Seitenanfang

Tipps zur Problembehandlung

Gründe für die Anzeige dieser Fehlermeldung und Vorgehensweise bei der Fehlerbehebung

Wenn Sie eine Löschabfrage unter Verwendung mehrerer Tabellen erstellen und für die Eigenschaft Eindeutige Datensätze der Abfrage den Wert Nein festlegen, zeigt Access beim Ausführen der Abfrage die Fehlermeldung Löschen aus den angegebenen Tabellen nicht möglich an.

Um dieses Problem zu beheben, legen Sie für die Eigenschaft Eindeutige Datensätze der Abfrage den Wert Ja fest.

  1. Öffnen Sie die Löschabfrage in der Entwurfsansicht.

  2. Drücken Sie F4, wenn das Eigenschaftenfenster der Abfrage nicht geöffnet ist, um es zu öffnen.

  3. Klicken Sie auf den Abfrage-Designer, um (anstelle der Feldeigenschaften) die Abfrageeigenschaften anzuzeigen.

  4. Suchen Sie im Eigenschaftenfenster der Abfrage nach der Eigenschaft Eindeutige Datensätze, und legen Sie den Wert Ja fest.

Beenden des Modus "Deaktiviert", damit Abfragen nicht blockiert werden

Wenn Sie öffnen eine Desktopdatenbank, die Sie nicht vertrauen möchten oder die befindet sich nicht an einem vertrauenswürdigen Speicherort, blockiert Access standardmäßig Ausführung aller Aktionsabfragen.

Wenn Sie versuchen, eine Aktionsabfrage auszuführen, und Sie den Eindruck haben, dass nichts passiert, überprüfen Sie die Statusleiste von Access auf die folgende Meldung:

Die Aktion oder das Ereignis wurde durch den Modus 'Deaktiviert' blockiert.

Führen Sie die folgenden Schritte aus, wenn diese Meldung angezeigt wird, um den blockierten Inhalt zu aktivieren:

  • Klicken Sie auf der Statusleiste Sicherheitswarnung auf Inhalt aktivieren, und führen Sie die Abfrage erneut aus.

Weitere Informationen zum Modus Deaktiviert und zur Access-Sicherheit finden Sie im Artikel Verhalten von vertrauenswürdigen und nicht vertrauenswürdigen Datenbankobjekten.

Seitenanfang

Hinweis : Haftungsausschluss für maschinelle Übersetzungen: Dieser Artikel wurde mithilfe eines Computersystems und ohne jegliche Bearbeitung durch Personen übersetzt. Microsoft bietet solche maschinellen Übersetzungen als Hilfestellung für Benutzer ohne Englischkenntnisse an, damit Sie von den Informationen zu Produkten, Diensten und Technologien von Microsoft profitieren können. Da es sich bei diesem Artikel um eine maschinelle Übersetzung handelt, enthält er möglicherweise Fehler in Bezug auf (Fach-)Terminologie, Syntax und/oder Grammatik.

Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×