In diesem Artikel wird erläutert, wie Sie eine Anfügeabfrage erstellen und ausführen. Eine Anfügeabfrage verwenden Sie zum Hinzufügen neuer Datensätze zu einer vorhandenen Tabelle unter Verwendung von Daten aus anderen Quellen.
Wenn Sie Daten in einem vorhandenen Satz von Datensätzen ändern müssen, z. B. den Wert eines Felds aktualisieren, können Sie eine Aktualisierungsabfrage verwenden. Wenn Sie eine neue Tabelle aus einer Auswahl von Daten erstellen oder zwei Tabellen in einer neuen Tabelle zusammenführen müssen, können Sie eine Tabellenerstellungsabfrage verwenden. Weitere Informationen zu Updateabfragen oder Tabellenerstellungsabfragen oder allgemeine Informationen zu anderen Möglichkeiten zum Hinzufügen von Datensätzen zu einer Datenbank oder zum Ändern vorhandener Daten finden Sie im Abschnitt Siehe auch .
Inhalt dieses Artikels
Übersicht
Eine Anfügeabfrage wählt die Datensätze aus einer oder mehreren Datenquellen aus und kopiert die ausgewählten Datensätze in eine vorhandene Tabelle.
Angenommen, Sie erwerben eine Datenbank, die eine Tabelle mit potenziellen Neukunden enthält, und Sie verfügen in der vorhandenen Datenbank bereits über eine Tabelle mit dieser Art von Daten. Sie möchten die Daten an einem Ort speichern, daher entscheiden Sie sich, die Daten aus der neuen Datenbank in die vorhandene Tabelle zu kopieren. Damit Sie die neuen Daten nicht manuell eingeben müssen, können Sie die Datensätze mithilfe einer Anfügeabfrage kopieren.
Vorteile der Anfügeabfrage
Mithilfe einer Abfrage zum Kopieren von Daten können Sie folgende Aktionen ausführen:
-
Anfügen mehrerer Datensätze in einem Schritt: Beim manuellen Kopieren von Daten müssen Sie in der Regel mehrere Kopier-/Einfügevorgänge ausführen. Mit einer Abfrage werden alle Daten zusammen ausgewählt und anschließend kopiert.
-
Überprüfen der Auswahl vor dem Kopieren: Sie können die Auswahl in der Datenblattansicht anzeigen und bei Bedarf Anpassungen vornehmen, bevor Sie die Daten kopieren. Das ist besonders praktisch, wenn die Abfrage Kriterien oder Ausdrücke enthält und Sie anhand mehrerer Versuche die richtigen ermitteln müssen. Eine Anfügeabfrage kann nicht rückgängig gemacht werden. Wenn Ihnen ein Fehler unterläuft, müssen Sie entweder die Datenbank mithilfe einer Sicherung wiederherstellen oder den Fehler manuell oder mit einer Löschabfrage korrigieren.
-
Verfeinern der Auswahl anhand von Kriterien: Sie können beispielsweise nur die Datensätze von Kunden in Ihrer Stadt anfügen.
-
Anfügen von Datensätzen, wenn einige Felder in den Datenquellen nicht in der Zieltabelle vorhanden sind: Angenommen, Ihre vorhandene Kundentabelle hat elf Felder, und die neue Tabelle, die kopiert werden soll, enthält nur neun dieser elf Felder. Mit einer Anfügeabfrage kopieren Sie die Daten aus den neun übereinstimmenden Feldern und lassen die beiden anderen Felder leer.
Grundlegende Schritte einer Anfügeabfrage
Eine Anfügeabfrage wird durch Ausführen der folgenden grundlegenden Schritte erstellt:
-
Erstellen einer Auswahlabfrage Wählen Sie zunächst die Daten aus, die Sie kopieren möchten. Sie können die Auswahlabfrage nach Bedarf anpassen und beliebig oft ausführen, um sicherzustellen, dass die Daten ausgewählt werden, die Sie kopieren möchten.
-
Konvertieren der Auswahlabfrage in eine Anfügeabfrage Nachdem die Auswahl fertig ist, ändern Sie den Abfragetyp zu Anfügen.
-
Auswählen der Zielfelder für jede Spalte in der Anfügeabfrage In einigen Fällen wählt Access die Zielfelder automatisch für Sie aus. Sie können die Zielfelder anpassen oder Sie selbst auswählen, falls Access diesen Schritt nicht übernommen hat.
-
Anzeigen einer Vorschau und Ausführen der Abfrage, um die Datensätze anzufügen Bevor Sie die Datensätze anfügen, können eine Vorschau der angefügten Datensätze in der Datenblattansicht anzeigen.
Wichtig: Eine Anfügeabfrage kann nicht rückgängig gemacht werden. Erwägen Sie, Ihre Datenbank oder die Zieltabelle zu sichern.
Erstellen und Ausführen einer Anfügeabfrage
In diesem Abschnitt
Schritt 1: Erstellen einer Abfrage zum Auswählen der zu kopierenden Datensätze
-
Öffnen Sie die Datenbank, die die Datensätze enthält, die Sie kopieren möchten.
-
Klicken Sie auf der Registerkarte Erstellen in der Gruppe Abfragen auf Abfrageentwurf.
-
Doppelklicken Sie auf die Tabellen oder Abfragen, die die zu kopierenden Datensätze enthalten, und klicken Sie dann auf Schließen.
Die Tabellen oder Abfragen werden als ein oder mehrere Fenster im Abfrage-Designer angezeigt. Jedes Fenster listet die Felder in einer Tabelle oder Abfrage auf. Diese Abbildung zeigt eine typische Tabelle im Abfrage-Designer.
1. Objekttabelle im Abfrage-Designer
2. Abfrageentwurfsbereich
-
Doppelklicken Sie auf jedes Feld, das angefügt werden soll. Die ausgewählten Felder werden in der Zeile Feld im Abfrageentwurfsbereich angezeigt.
Die Datentypen der Felder in der Quelltabelle müssen mit den Datentypen in den Feldern der Zieltabelle kompatibel sein. Textfelder sind mit den meisten Feldtypen kompatibel. Zahlenfelder sind nur mit anderen Zahlenfeldern kompatibel. Sie können beispielsweise Zahlen an ein Textfeld anfügen, nicht jedoch Text an ein Zahlenfeld.
Sie können auch einen Ausdruck als Feld verwenden , z. B. =Date(), um automatisch das heutige Datum zurückzugeben, und Sie können Ausdrücke mit Tabellen- oder Abfragefeldern im Entwurfsraster verwenden, um die ausgewählten Daten anzupassen. Wenn Ihre Zieltabelle beispielsweise ein Feld enthält, in dem ein vierstelliges Jahr gespeichert ist, und die Quelltabelle ein reguläres Datums-/Uhrzeitfeld enthält, können Sie die DatePart-Funktion mit dem Quellfeld verwenden, um nur das Jahr auszuwählen.
Doppelklicken Sie auf das Sternchen (*) am Anfang der Liste mit den Tabellenfeldern, um alle Felder in einer Tabelle schnell hinzuzufügen. In dieser Abbildung wird der Entwurfsbereich dargestellt, dem alle Felder hinzugefügt wurden.
-
Optional können Sie in die Zeile Kriterien im Entwurfsbereich ein oder mehrere Kriterien eingeben. In der folgenden Tabelle sind einige Beispielkriterien mit den jeweiligen Auswirkungen auf die Abfrage aufgeführt.
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.
>= "Callahan"
Gibt alle Datensätze ab "Callahan" bis zum Ende des Alphabets zurück.
Zwischen #2.2.2017# Und #1.12.2017#
Gibt Datumsangaben vom 2.02.17 bis zum 1.12.17 (ANSI-89) zurück. Wenn Ihre Datenbank die ANSI-92-Wildcardzeichen verwendet, verwenden Sie einfache Anführungszeichen (') anstelle von Pfundzeichen. Beispiel: Zwischen "2/2/2017" und "12/1/2017".
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 beginnen. Verwenden Sie das Prozentzeichen anstelle des Sternchens, wenn Ihre Datenbank den ANSI-92-Platzhalter-Zeichensatz verwendet.
Wie "*ar*"
Findet alle Datensätze, die die Buchstabenfolge "ar" enthalten. Verwenden Sie das Prozentzeichen anstelle des Sternchens, wenn Ihre Datenbank den ANSI-92-Platzhalter-Zeichensatz verwendet.
Wie "Maison Dewe?"
Findet alle Datensätze, die mit "Maison" beginnen und außerdem eine zweite aus 5 Buchstaben bestehende Zeichenfolge enthalten, deren erste 4 Buchstaben "Dewe" lauten und deren letzter Buchstabe unbekannt ist (durch das Fragezeichen angegeben). Verwenden Sie den Unterstrich (_) anstelle des Fragezeichens, wenn Ihre Datenbank den ANSI-92-Platzhalter-Zeichensatz verwendet.
#2.2.2017#
Findet alle Datensätze für den 2. Februar 2017. Schließen Sie das Datum in einfache Anführungszeichen anstelle von Nummernzeichen (#) ein ('2.2.2017'), wenn Ihre Datenbank den ANSI-92-Platzhalter-Zeichensatz verwendet.
< Datum() - 30
Gibt alle Daten zurück, die älter als 30 Tage sind.
Datum()
Gibt alle Datensätze zurück, die das Tagesdatum enthalten.
Zwischen Datum() Und DateAdd("M", 3, Datum())
Gibt alle Datensätze zwischen dem Tagesdatum und in drei Monaten ab dem Tagesdatum 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 Wert enthalten.
""
Gibt alle Datensätze zurück, die eine leere Zeichenfolge enthalten. Leere Zeichenfolgen verwenden Sie, wenn Sie einem erforderlichen Feld einen Wert hinzufügen müssen, diesen Wert aber noch nicht kennen. Beispielsweise könnte ein Feld eine Faxnummer erfordern, aber manche Ihrer Kunden besitzen möglicherweise kein Faxgerät. In diesem Fall geben Sie doppelte Anführungszeichen ohne Leerzeichen dazwischen ("") anstelle einer Zahl ein.
-
Klicken Sie auf der Registerkarte Abfrageentwurf in der Gruppe Ergebnisse auf Ausführen .
-
Vergewissern Sie sich, dass die Abfrage die Datensätze zurückgegeben hat, die Sie kopieren möchten. Wenn Sie der Abfrage Felder hinzufügen oder daraus entfernen müssen, wechseln Sie zurück zur Entwurfsansicht, und fügen Sie Felder hinzu, wie im vorherigen Schritt beschrieben, oder wählen Sie die felder aus, die Sie nicht möchten, und drücken Sie ENTF, um sie aus der Abfrage zu entfernen.
Schritt 2: Konvertieren der Auswahlabfrage in eine Anfügeabfrage
-
Klicken Sie auf der Registerkarte Start in der Gruppe Ansicht auf Ansicht und dann auf Entwurfsansicht.
-
Klicken Sie auf der Registerkarte Abfrageentwurf in der Gruppe Abfragetyp auf Anfügen.
Das Dialogfeld Anfügen wird angezeigt.
-
Geben Sie als Nächstes an, ob die Datensätze an eine Tabelle in der aktuellen oder einer anderen Datenbank angefügt werden sollen.
Führen Sie eine der folgenden Aktionen aus:
-
Klicken Sie im Dialogfeld Anfügen auf Aktuelle Datenbank, wählen Sie im Kombinationsfeld Tabellenname die Zieltabelle aus, und klicken Sie auf OK.
– oder –
-
Klicken Sie im Dialogfeld Anfügen auf Andere Datenbank.
-
Geben Sie in das Feld Dateiname den Speicherort und Namen der Zieldatenbank ein.
-
Geben Sie im Kombinationsfeld Tabellenname den Namen der Zieltabelle ein, und klicken Sie auf OK.
-
Schritt 3: Auswählen der Zielfelder
Die Auswahl der Zielfelder hängt von der Erstellung der Auswahlabfrage in Schritt 1 ab.
Auswahlabfrage |
Access |
---|---|
Alle Felder wurden von der Quelltabelle oder -abfrage hinzugefügt. |
Fügt alle Felder in der Zieltabelle der Zeile Anfügen an im Entwurfsbereich hinzu. |
Der Abfrage wurden einzelne Felder hinzugefügt, oder es wurden Ausdrücke verwendet. Die Feldnamen in der Quell- und Zieltabelle stimmen überein. |
Fügt automatisch die übereinstimmenden Zielfelder der Zeile Anfügen an in der Abfrage hinzu. |
Es wurden einzelne Felder hinzugefügt oder Ausdrücke verwendet. Einige Namen in der Quell- und Zieltabelle stimmen nicht überein. |
Fügt die übereinstimmenden Felder hinzu und lässt die nicht übereinstimmenden Felder leer. |
Wenn Access Felder leer lässt, können Sie auf eine Zelle in der Zeile Anfügen an klicken und ein Zielfeld auswählen.
Die folgende Abbildung zeigt, wie Sie auf eine Zelle in der Zeile Anfügen an klicken und ein Zielfeld auswählen.
Hinweis: Wenn Sie das Zielfeld leer lassen, fügt die Abfrage dem Feld keine Daten an.
Schritt 4: Vorschau und Ausführen der Anfügeabfrage
-
Wechseln Sie zur Datenblattansicht, um eine Vorschau der Änderungen anzuzeigen.
Tipp: Zum raschen Wechseln von Ansichten klicken Sie mit der rechten Maustaste auf die Registerkarte am oberen Rand der Abfrage, und klicken Sie dann auf die gewünschte Ansicht.
-
Kehren Sie zur Entwurfsansicht zurück, und klicken Sie dann auf Ausführen , um die Datensätze anzufügen.
Hinweis: Bei der Ausführung einer Abfrage, die sehr viele Daten zurückgibt, kann u. U. eine Fehlermeldung mit dem Hinweis angezeigt werden, dass die Abfrage nicht rückgängig gemacht werden kann. Versuchen Sie, den Grenzwert für das Speichersegment auf 3 MB zu erhöhen, damit die Abfrage ausgeführt werden kann.
Beenden des Modus "Deaktiviert" zum Blockieren einer Abfrage
Wenn Sie versuchen, eine Anfügeabfrage 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.
Damit dieses Problem behoben wird, klicken Sie auf der Statusleiste auf Inhalt aktivieren, um die Abfrage zu aktivieren.
Hinweis: Wenn Sie die Anfügeabfrage aktivieren, wird auch der gesamte übrige Datenbankinhalt aktiviert.
Wenn die Statusleiste nicht angezeigt wird, ist sie möglicherweise ausgeblendet. Sie können sie einblenden, es sei denn, sie wurde auch deaktiviert. Wenn die Statusleiste deaktiviert wurde, können Sie sie aktivieren.
Siehe auch
Erstellen und Ausführen einer Aktualisierungsabfrage