Aktualisieren von Daten mithilfe einer Abfrage

In diesem Artikel wird beschrieben, wie eine Aktualisierungsabfrage erstellt und ausgeführt wird. Eine Aktualisierungsabfrage können Sie verwenden, wenn Sie vorhandene Daten in einer Menge von Datensätzen aktualisieren oder ändern müssen.

Mit einer Aktualisierungsabfrage können Sie einer Datenbank keine neuen Datensätze hinzufügen oder ganze Datensätze aus einer Datenbank löschen. Wenn Sie einer Datenbank neue Datensätze hinzufügen möchten, verwenden Sie eine Anfügeabfrage. Zum Löschen ganzer Datensätze aus einer Datenbank kommt eine Löschabfrage zum Einsatz. Weitere Informationen finden Sie im Abschnitt Siehe auch.

 Hinweis   Sie können eine Aktualisierungsabfrage nicht in einem Webbrowser ausführen. Wenn eine Aktualisierungsabfrage in einer Webdatenbank ausgeführt werden soll, müssen Sie die Datenbank zuvor mit Access öffnen.

Inhalt dieses Artikels


Übersicht

Mit Aktualisierungsabfragen können Sie Daten zu einem oder mehreren vorhandenen Datensätzen hinzufügen, bzw. Daten in vorhandenen Datensätzen ändern oder löschen. Aktualisierungsabfragen können Sie sich als leistungsfähige Version des Dialogfelds Suchen und Ersetzen vorstellen.

Ähnlichkeiten und Unterschiede zwischen dem Feld "Suchen und Ersetzen" und einer Aktualisierungsabfrage

Wie im Dialogfeld Suchen und Ersetzen können Sie mit einer Aktualisierungsabfrage Folgendes tun:

  • den Wert angeben, der ersetzt werden soll
  • den Wert angeben, der als Ersatz verwendet werden soll

Im Gegensatz zum Dialogfeld Suchen und Ersetzen bietet eine Aktualisierungsabfrage die folgenden Möglichkeiten:

  • Verwenden von Kriterien, die nicht von dem zu ersetzenden Wert abhängig sind
  • Aktualisieren einer größeren Menge von Datensätzen in einem Schritt
  • Gleichzeitiges Ändern von Datensätzen in mehr als einer Tabelle

Einschränkungen für aktualisierbare Felder

Mit einer Aktualisierungsabfrage können die Daten in den folgenden Feldtypen nicht aktualisiert werden:

  • Berechnete Felder    Die Werte in berechneten Feldern (Berechnetes Feld: Ein in einer Abfrage definiertes Feld, das statt gespeicherter Daten das Ergebnis eines Ausdrucks anzeigt. Immer wenn sich ein Wert im Ausdruck ändert, wird der Wert neu berechnet.) befinden sich nicht dauerhaft in Tabellen. Nachdem Sie in Access berechnet wurden, sind sie nur im temporären Speicher des Computers vorhanden. Da berechnete Felder keinen dauerhaften Speicherort aufweisen, können Sie diese nicht aktualisieren.
  • Felder aus einer Summenabfrage oder einer Kreuztabellenabfrage    Die Werte in diesen Abfragearten werden berechnet und können daher nicht mit einer Aktualisierungsabfrage aktualisiert werden.
  • AutoWert-Felder    Standardmäßig werden die Werte in AutoWert-Feldern nur geändert, wenn Sie einer Tabelle einen Datensatz hinzufügen.
  • Felder in Abfragen mit eindeutigen Werten und eindeutigen Datensätzen    Die Werte in derartigen Abfragen sind zusammengefasst. Einige Werte stellen einen einzelnen Datensatz dar, andere werden aus mehr als einem Datensatz gebildet. Ein Aktualisierungsvorgang kann nicht ausgeführt werden, da nicht ermittelt werden kann, welche Datensätze als Duplikate ausgeschlossen sind. Es ist daher nicht möglich, alle notwendigen Datensätze zu aktualisieren. Diese Einschränkung gilt, wenn Sie eine Aktualisierungsabfrage verwenden oder versuchen, Daten manuell zu aktualisieren, indem Sie Werte in ein Formular oder ein Datenblatt eingeben.
  • Felder in einer Union-Abfrage    Daten in Feldern einer Union-Abfrage können nicht aktualisiert werden, da jeder Datensatz, der in mindestens zwei Datenquellen erscheint, nur einmal im Ergebnis der Union-Abfrage angezeigt wird. Da einige doppelte Datensätze in den Ergebnissen nicht enthalten sind, kann Access nicht alle erforderlichen Datensätze aktualisieren.
  • Primärschlüsselfelder    In einigen Fällen, z. B. wenn das Primärschlüsselfeld in einer Tabellenbeziehung verwendet wird, kann das Feld erst aktualisiert werden, wenn Sie die Beziehung für die automatische Aktualisierungsweitergabe einrichten.

 Hinweis   Bei der Aktualisierungsweitergabe aktualisiert Access automatisch die Fremdschlüsselwerte, wenn in einer übergeordneten Tabelle ein Primärschlüsselwert geändert wird.

Seitenanfang Seitenanfang

Erstellen und Ausführen einer Aktualisierungsabfrage

Zum Erstellen und Ausführen einer Aktualisierungsabfrage hat sich das Ausführen von zwei Hauptschritten als optimale Methode erwiesen: Erstellen Sie zuerst eine Auswahlabfrage, in der die zu aktualisierenden Datensätze identifiziert werden. Konvertieren Sie anschließend diese Abfrage in eine Aktualisierungsabfrage, die Sie zum Aktualisieren der Datensätze ausführen können.

 Tipp   Bevor Sie eine Aktualisierungsabfrage ausführen, sollten Sie Ihre Datenbank sichern. Da Sie die Ergebnisse einer Aktualisierungsabfrage nicht rückgängig machen können, wird mithilfe einer Sicherung sichergestellt, dass Sie im Bedarfsfall die Änderungen zurücknehmen können.

AnzeigenSichern der Datenbank

  1. Klicken Sie auf die Registerkarte Datei und dann auf Freigeben.
  2. Klicken Sie rechts unter Erweitert auf Datenbank sichern.
  3. Geben Sie im Dialogfeld Sicherungskopie speichern als einen Namen und Speicherort für die Sicherungskopie an, und klicken Sie dann auf Speichern.

Die ursprüngliche Datei wird von Access geschlossen, eine Sicherungskopie wird erstellt, und die ursprüngliche Datei wird wieder geöffnet.

Schließen Sie die ursprüngliche Datei, wenn Sie eine Sicherung wiederherstellen möchten, und benennen Sie sie um, damit für die Sicherungskopie der Name der ursprünglichen Version verwendet werden kann. Weisen Sie der Sicherungskopie den Namen der ursprünglichen Version zu, und öffnen Sie dann die umbenannte Sicherungskopie in Access.


In diesem Abschnitt


Schritt 1: Erstellen einer Auswahlabfrage zum Identifizieren der Datensätze, die aktualisiert werden sollen

  1. Öffnen Sie die Datenbank, die die Datensätze enthält, die Sie aktualisieren möchten.
  2. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Makros und Code auf Abfrageentwurf.

Der Abfrage-Designer wird geöffnet, und das Dialogfeld Tabelle anzeigen wird geöffnet.

  1. Klicken Sie auf die Registerkarte Tabellen.
  2. Wählen Sie die Tabelle(n) aus, die die zu aktualisierenden Datensätze enthält bzw. enthalten, klicken Sie auf Hinzufügen, und klicken Sie dann auf Schließen.

Die Tabelle(n) wird bzw. werden als mindestens ein Fenster im Abfrage-Designer angezeigt. In den Fenstern werden alle Felder in jeder Tabelle aufgeführt. In dieser Abbildung wird der Abfrage-Designer mit einer typischen Tabelle angezeigt.

Tabelle im Abfrage-Designer

Legende 1 Tabelle im Abfrage-Designer
Legende 2 Abfrageentwurfsbereich
  1. Doppelklicken Sie in den Tabellenfenstern auf die Felder, die Sie aktualisieren möchten. Die ausgewählten Felder werden in der Zeile Feld im Abfrageentwurfsbereich angezeigt.

Im Abfrageentwurfsbereich können Sie ein Tabellenfeld pro Spalte hinzufügen.

Doppelklicken Sie im Tabellenfenster auf das Sternchen (*) am Anfang der Liste mit den Tabellenfeldern, um alle Felder in einer Tabelle schnell hinzuzufügen. In dieser Abbildung wird der Abfrageentwurfsbereich mit allen hinzugefügten Feldern angezeigt.

Abfrage mit allen hinzugefügten Tabellenfeldern

  1. Wenn Sie die Abfrageergebnisse aufgrund von Feldwerten einschränken möchten, geben Sie im Abfrageentwurfsbereich in der Zeile Kriterien die Kriterien ein, die zum Einschränken der Ergebnisse verwendet werden sollen.

AnzeigenTabelle mit Beispielkriterien

In der folgenden Tabelle sind einige Beispielkriterien mit den jeweiligen Auswirkungen auf die Ergebnisse einer Abfrage aufgeführt.

 Hinweis   In vielen Beispielen dieser Tabelle werden Platzhalterzeichen verwendet, damit die Abfrage flexibler ist und bessere Ergebnisse liefert.

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 #02.02.2007# Und #01.12.2007# Gibt Daten zwischen dem 2. Februar 2007 und dem 1. Dezember 2007 (ANSI-89) zurück. Wenn in der Datenbank ANSI-92-Platzhalterzeichen verwendet werden, verwenden Sie einfache Anführungszeichen (') anstelle der Nummernzeichen (#). Beispiel: Zwischen '02.02.2007' Und '01.12.2007'. 
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. Wenn in der Datenbank ANSI-92-Platzhalterzeichen verwendet werden, verwenden Sie das Prozentzeichen (%) anstelle des Sternchens (*).
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/2007# Findet alle Datensätze für den 2. Februar 2007. Schließen Sie das Datum in einfache Anführungszeichen (') anstelle von Nummernzeichen (#) ein, wenn in der Datenbank ANSI-92-Platzhalterzeichen verwendet werden. Beispiel: '2.2.2007'.
< 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 DatAdd("M", 3, Datum()) Verwendet die Funktionen Datum und DatAdd, um alle Datensätze zwischen dem Tagesdatum und dem Datum in drei Monaten ab heute zurückzugeben.
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, Sie aber diesen Wert noch nicht kennen. Beispielsweise könnte ein Feld eine Faxnummer erfordern, aber manche Ihrer Kunden haben möglicherweise kein Faxgerät. In diesem Fall geben Sie doppelte Anführungszeichen ohne Leerzeichen dazwischen ("") anstelle einer Zahl ein. 

  1. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Ergebnisse auf Ausführen.
  2. Überprüfen Sie, ob die Abfrage die Datensätze zurückgibt, die Sie aktualisieren möchten.
  3. Um alle Felder, die im Abfrageentwurf nicht enthalten sein sollen, zu entfernen, wählen Sie die Felder aus und drücken ENTF.
  4. Wenn Sie weitere Felder, die in der Abfrage enthalten sein sollen, hinzufügen möchten, ziehen Sie diese Felder in den Abfrageentwurfsbereich.

Schritt 2: Aktualisieren der Datensätze

  1. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Abfragetyp auf Aktualisieren.

Mit diesem Verfahren wird gezeigt, wie eine Auswahlabfrage in eine Aktualisierungsabfrage geändert wird. Dabei wird in Access dem Abfrageentwurfsbereich die Zeile Aktualisieren hinzugefügt. In der folgenden Abbildung wird eine Aktualisierungsabfrage gezeigt, die alle nach dem 5. Januar 2005 gekauften Posten zurückgibt und für alle Datensätze, die dieses Kriterium erfüllen, den Ort in Lagerhaus 3 ändert.

Aktualisierungsabfrage mit einem einzelnen Aktualisierungskriterium

  1. Suchen Sie das Feld, das die Daten enthält, die Sie ändern möchten, und geben Sie dann in die Zeile Aktualisieren für dieses Feld den Ausdruck (Ihre Änderungskriterien) ein.

In der Zeile Aktualisieren können Sie jeden gültigen Ausdruck verwenden.

AnzeigenTabelle mit Beispielausdrücken

Die folgende Tabelle enthält Beispielausdrücke und beschreibt, wie damit Daten geändert werden.

Ausdruck Ergebnis
"Verkaufsberater/in" Ändert in einem Feld vom Datentyp Text einen Textwert in "Verkaufsberater/in".
#8/10/07# Ändert in einem Feld vom Datentyp Datum/Uhrzeit einen Datumswert in 10-Aug-07.
Ja Ändert in einem Feld vom Datentyp Ja/Nein den Wert Nein in Ja.
"TN" & [Teilenummer] Fügt "TN" am Anfang jeder angegebenen Teilenummer an.
[Einzelpreis] * [Menge] Multipliziert die Werte im Feld Einzelpreis mit der Menge.
[Fracht] * 1,5 Erhöht die Werte in einem Feld namens Fracht um 50 %.
DomSumme("[Menge] * [Einzelpreis]",
"Bestelldetails", "[ArtikelNr]=" & [ArtikelNr])
Wenn die Werte von ArtikelNr in der aktuellen Tabelle mit den Werten von ArtikelNr in der Tabelle Bestelldetails übereinstimmen, wird mit diesem Ausdruck der Gesamtumsatz aktualisiert, indem die Werte im Feld Menge mit den Werten im Feld Einzelpreis multipliziert werden. Der Ausdruck verwendet die Funktion DomSumme, da sie für mehr als eine Tabelle und mehr als ein Tabellenfeld ausgeführt werden kann.
Rechts([BestimmungsortPLZ], 5) Schneidet die linken Zeichen in einem Text oder einer numerischen Zeichenfolge ab (entfernt sie) und belässt die fünf rechten Zeichen.
Wenn(IstNull([Einzelpreis]), 0, [Einzelpreis]) Ändert im Feld Einzelpreis einen (unbekannten oder nicht definierten) Nullwert in Null (0).

  1. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Ergebnisse auf Ausführen.

Eine Warnmeldung wird angezeigt.

  1. Klicken Sie auf Ja, um die Abfrage auszuführen und die Daten zu aktualisieren.

 Hinweis   Wenn Sie die Abfrage ausführen, werden Sie möglicherweise bemerken, dass einige Felder im Resultset fehlen. Falls die Abfrage Felder enthält, die Sie nicht aktualisieren, werden diese von Access standardmäßig nicht in den Ergebnissen angezeigt. Beispielsweise können Sie ID-Felder aus zwei Tabellen einschließen, um sicherzustellen, dass Ihre Abfrage die richtigen Datensätze identifiziert und aktualisiert. Wenn Sie diese ID-Felder nicht aktualisieren, werden sie von Access nicht in den Ergebnissen angezeigt.

Seitenanfang Seitenanfang

Aktualisieren von Daten einer Tabelle mit den Daten einer anderen

Wenn Sie Daten einer Tabelle mit den Daten einer anderen aktualisieren müssen, beachten Sie die folgende Regel: Die Datentypen der Quell- und Zielfelder müssen entweder übereinstimmen oder kompatibel sein.

Wenn Sie die Daten in einer Tabelle mit den Daten einer anderen aktualisieren und kompatible statt übereinstimmende Datentypen verwenden, werden außerdem von Access die Datentypen dieser Felder in der Zieltabelle konvertiert. Deshalb sind einige Daten in der Zieltabelle möglicherweise abgeschnitten (gelöscht). Im Abschnitt Beschränkungen für Datentypkonvertierungen sind die Möglichkeiten zum Konvertieren von Datentypen aufgeführt. In der Tabelle in diesem Abschnitt wird außerdem erläutert, wann durch das Konvertieren eines Datentyps einige oder alle Daten in einem Feld geändert oder entfernt werden und welche Daten entfernt werden können.

Zum Aktualisieren von Daten in einer Tabelle mit den Daten einer anderen Tabellen sind im Wesentlichen die folgenden Schritte erforderlich:

  1. Erstellen Sie eine Aktualisierungsabfrage, und fügen Sie der Abfrage die Quell- und Zieltabellen hinzu.
  2. Verknüpfen Sie die Tabellen in den Feldern, die die verwandten Informationen enthalten.
  3. Fügen Sie der Zeile Feld des Abfrageentwurfsbereichs die Namen der Zielfelder hinzu.
  4. Fügen Sie der Zeile Aktualisieren des Abfrageentwurfsbereichs die Namen der Quellfelder hinzu. Verwenden Sie dabei die folgende Syntax: [Quelltabelle].[Quellfeld].

Für die Schritte in diesem Abschnitt wird die Verwendung zweier ähnlicher Tabellen vorausgesetzt. In diesem Beispiel befindet sich die Kliententabelle in einer Datenbank, die Ihnen vor kurzem zur Verfügung gestellt wurde. Sie enthält aktuellere Daten als die Kundentabelle. Sie stellen fest, dass sich die Namen einiger Vorgesetzten sowie einige Adressen geändert haben. Deshalb entschließen Sie sich, die Kundentabelle mit den Daten aus der Kliententabelle zu aktualisieren.

Kliententabelle

Klienten-ID Name Adresse Ort Bundesland/Kanton PLZ Land/Region Telefon Kontakt
1 Baldwin Museum of Science Hauptstraße 1 Berlin Berlin 12345 Deutschland (01234) 12 34-56 Jörg Bott
2 Blue Yonder Airlines Montagsweg 123 Kiel Schleswig-Holstein 23456 Deutschland (0123) 6 78-9 Cristina Potra
3 Coho Winery Dienstagsstraße 234 Frankfurt am Main Hessen 34567 Deutschland (0456) 1 23-0 David Probst
4 Contoso Pharmaceuticals Beispielallee 234 München Bayern 6789 Deutschland (098) 9 02-01 David Ahs
5 Fourth Coffee Donnerstagsgasse 345 Hamburg 56789 Deutschland (0123) 2 34 56 78 Per Reitzel
6 Consolidated Messenger Beispielgasse 123 Frankfurt am Main Hessen 34567 Deutschland (0456) 1 23-4 Michael Anderberg
7 Graphic Design Institute Freitagsweg 78 Essen Nordrhein-Westfalen 87654 Deutschland (04567) 78 91 23 45 Sara Hettich
8 Litware, Inc. Sonntagsallee 456 Dortmund Nordrhein-Westfalen 31415 Deutschland (05678) 56 78 91 23 Michael Brundage
9 Tailspin Toys Sonntagsallee 56 Dortmund Nordrhein-Westfalen 31415 Deutschland (05678) 56 78 91 23 Daniel Brunner

Die Kundentabelle

Kunden-ID Name Adresse Ort Bundesland/Kanton PLZ Land oder Region Telefon Manager
1 Baldwin Museum of Science Hauptstraße 1 Berlin Berlin 12345 Deutschland (01234) 12 34-56 Martin Rienstra
2 Blue Yonder Airlines Montagsweg 123 Kiel Schleswig-Holstein 23456 Deutschland (0123) 6 78-9 Cristina Potra
3 Coho Winery Dienstagsstraße 234 Frankfurt am Main Hessen 34567 Deutschland (0456) 1 23-0 David Probst
4 Contoso Pharmaceuticals Beispielallee 234 München Bayern 86789 Deutschland (098) 9 02-01 David Ahs
5 Fourth Coffee Samstagsweg 789 Hamburg 56789 Deutschland (0123) 2 34 56 78 Per Reitzel
6 Consolidated Messenger Beispielgasse 123 Frankfurt am Main Hessen 34567 Deutschland (0456) 1 23-4 Kim Ralls
7 Graphic Design Institute Mittwochsallee 345 Essen Nordrhein-Westfalen 87654 Deutschland (04567) 78 91 23 45 Gretchen Rivas
8 Litware, Inc. Sonntagsallee 456 Dortmund Nordrhein-Westfalen 31415 Deutschland (05678) 56 78 91 23 Jesper Aaberg
9 Tailspin Toys Sonntagsallee 56 Dortmund Nordrhein-Westfalen 31415 Deutschland (05678) 56 78 91 23 Daniel Brunner

Bedenken Sie im weiteren Verlauf, dass die Datentypen für die einzelnen Tabellenfelder nicht übereinstimmen müssen. Sie müssen kompatibel sein. Die Daten in der Quelltabelle müssen von Access in einen Typ konvertiert werden, der von der Zieltabelle verwendet werden kann. In einigen Fällen können bei der Konvertierung Daten gelöscht werden. Weitere Informationen zu den Beschränkungen beim Konvertieren von Datentypen finden Sie im Abschnitt Beschränkungen für Datentypkonvertierungen.

Erstellen und Ausführen der Aktualisierungsabfrage

 Hinweis   Für die folgenden Schritte wird die Verwendung der beiden Beispieltabellen oben angenommen. Sie können die Schritte für Ihre Daten anpassen.

  1. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Makros und Code auf Abfrageentwurf.
  2. Klicken Sie im Dialogfeld Tabelle anzeigen auf die Registerkarte Tabellen.
  3. Doppelklicken Sie auf die Quell- und Zieltabellen, um sie der Abfrage hinzuzufügen, und klicken Sie dann auf Schließen. Jede Tabelle wird im oberen Abschnitt des Abfrage-Designers in einem Fenster angezeigt.
  4. In den meisten Fällen verknüpft Access verwandte Felder in einer Abfrage automatisch. Wenn Sie Felder, die verwandte Informationen erhalten, manuell verknüpfen möchten, ziehen Sie das zu verknüpfende Feld aus der einen Tabelle zum entsprechenden Feld in der anderen Tabelle.

Wenn Sie z. B. die oben gezeigten Beispieltabellen verwenden, ziehen Sie das Feld Klienten-ID in das Feld Kunden-ID. Dabei wird von Access eine Beziehung zwischen diesen Feldern in den beiden Tabellen erstellt. Über diese Beziehung werden die verwandten Datensätze verknüpft.

  1. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Abfragetyp auf Aktualisieren.
  2. Doppelklicken Sie in der Zieltabelle auf die Felder, die Sie aktualisieren möchten. Jedes Feld wird in der Zeile Feld im Abfrageentwurfsbereich angezeigt.

Fügen Sie alle Felder außer dem Feld Kunden-ID hinzu, wenn Sie die Beispieltabellen verwenden. Der Name der Zieltabelle wird in der Zeile Tabelle des Entwurfsbereichs angezeigt.

  1. Geben Sie in der Zeile Aktualisieren der Abfrage für jede Spalte, die ein Zielfeld enthält, den Namen der Quelltabelle und das Feld in der Quelltabelle ein, das dem Feld in der Zieltabelle einspricht. Verwenden Sie dazu diese Syntax: [Tabelle].[Feld]. Schließen Sie dabei die Tabellen- und Feldnamen in eckige Klammern ein, und trennen Sie die Tabellen- und Feldnamen durch einen Punkt.

In dieser Abbildung wird ein Teil des Entwurfsbereich dargestellt. Dazu werden die Beispieltabellen verwenden. Beachten Sie die Syntax für die Tabellen- und Feldnamen in der Zeile Aktualisieren.

Eine Abfrage, mit der eine Tabelle mit den Daten einer anderen aktualisiert wird

Bedenken Sie im weiteren Verlauf, dass Sie die Tabellen- und Feldnamen in der Zeile Aktualisieren richtig schreiben müssen. Außerdem muss die Zeichensetzung der ursprünglichen Tabellen- und Feldnamen übereinstimmen. Großschreibung müssen Sie jedoch nicht beachten.

  1. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Ergebnisse auf Ausführen.
  2. Klicken Sie auf Ja, wenn Sie aufgefordert werden, das Update zu bestätigen.

Beschränkungen für Datentypkonvertierungen

In der folgenden Tabelle werden die Access-Datentypen aufgeführt, Beschränkungen beim Konvertieren von Datentypen erläutert und kurz mögliche Datenverluste beim Konvertieren beschrieben.

Konvertierung in Von Änderungen oder Einschränkungen
Text Memo Access löscht außer den ersten 255 alle Zeichen.
Zahl Keine Einschränkungen.
Datum/Uhrzeit Keine Einschränkungen.
Währung Keine Einschränkungen.
AutoWert Keine Einschränkungen.
Ja/Nein Der Wert "-1" (Ja in einem Ja/Nein-Feld) wird in Ja konvertiert. Der Wert "0" (Nein in einem Ja/Nein-Feld) wird in Nein konvertiert.
Hyperlink Access schneidet Hyperlinks ab, die mehr als 255 Zeichen umfassen.
Memo Text Keine Einschränkungen.
Zahl Keine Einschränkungen.
Datum/Uhrzeit Keine Einschränkungen.
Währung Keine Einschränkungen.
AutoWert Keine Einschränkungen.
Ja/Nein Der Wert "-1" (Ja in einem Ja/Nein-Feld) wird in Ja konvertiert. Der Wert "0" (Nein in einem Ja/Nein-Feld) wird in Nein konvertiert.
Hyperlink Keine Einschränkungen.
Zahl Text Text muss aus Zahlen und gültigen Währungs- und Dezimaltrennzeichen bestehen. Die Anzahl der Zeichen im Text-Feld muss in dem für das Zahl-Feld festgelegten Größenbereich liegen.
Memo Das Memo-Feld darf nur Text und gültige Währungs- und Dezimaltrennzeichen enthalten. Die Anzahl der Zeichen im Memo-Feld muss in dem für das Zahl-Feld festgelegten Größenbereich liegen.
Zahl, jedoch mit einer anderen Feldgröße oder Genauigkeit Werte dürfen nicht größer oder kleiner als die Werte sein, die in der neuen Feldgröße gespeichert werden können. Wenn Sie die Genauigkeit ändern, rundet Access möglicherweise einige Werte.
Datum/Uhrzeit

Welche Datumsangaben konvertiert werden können, hängt von der Größe des Zahl-Felds ab. Denken Sie daran, dass Access alle Datumsangaben als serielle Datumsangaben und die Datumswerte als Gleitkommazahlen mit doppelter Genauigkeit speichert.

Access verwendet den 30. Dezember 1899 als Datum 0. Datumsangaben außerhalb des Bereichs zwischen dem 18. April 1899 und dem 11. September 1900 überschreiten die Größe eines Byte-Felds. Datumsangaben außerhalb des Bereichs zwischen dem 13. April 1810 und dem 16. September 1989 überschreiten die Größe eines Integer-Felds.

Legen Sie für die Eigenschaft Feldgröße des Zahl-Felds den Wert Long Integer oder größer fest, um alle möglichen Datumsangaben aufnehmen zu können.

Währung Werte dürfen die für das Feld festgelegte Größenbeschränkung nicht überschreiten (oder unterschreiten). Sie können beispielsweise das Feld Währung nur dann in ein Feld Integer umwandeln, wenn diese Werte größer als 255 und kleiner als 32.767 sind.
AutoWert Werte müssen innerhalb der für das Feld festgelegten Größenbeschränkung liegen.
Ja/Nein Ja-Werte werden in "-1" konvertiert. Nein-Werte werden in "0" konvertiert.
Datum/Uhrzeit Text Ursprünglicher Text muss als Datum oder als Datum/Uhrzeit-Kombination erkennbar sein. Beispiel: 18.01.07.
Memo Ursprünglicher Text muss als Datum oder als Datum/Uhrzeit-Kombination erkennbar sein. Beispiel: 18.01.07.
Zahl Wert muss zwischen -657.434 und 2.958.465,99998843 liegen.
Währung Wert muss zwischen -657.434 € und 2.958.465,9999 € liegen.
AutoWert Wert muss größer als -657.434 und kleiner als 2.958.466 sein.
Ja/Nein Der Wert "-1" (Ja) wird in 29. Dezember 1899 konvertiert. Der Wert "0" (Nein) wird in Mitternacht (24:00:00 Uhr) konvertiert.
Währung Text Text muss aus Zahlen und gültigen Trennzeichen bestehen.
Memo Text muss aus Zahlen und gültigen Trennzeichen bestehen.
Zahl Keine Einschränkungen.
Datum/Uhrzeit Keine Einschränkungen, der Wert wird von Access jedoch möglicherweise gerundet
AutoWert Keine Einschränkungen.
Ja/Nein Der Wert "-1" (Ja) wird in "1 €" konvertiert. Der Wert "0" (Nein) wird in "0 €" konvertiert.
AutoWert Text Nicht zulässig, wenn das AutoWert-Feld als Primärschlüssel dient.
Memo Nicht zulässig, wenn das AutoWert-Feld als Primärschlüssel dient.
Zahl Nicht zulässig, wenn das AutoWert-Feld als Primärschlüssel dient.
Datum/Uhrzeit Nicht zulässig, wenn das AutoWert-Feld als Primärschlüssel dient.
Währung Nicht zulässig, wenn das AutoWert-Feld als Primärschlüssel dient.
Ja/Nein Nicht zulässig, wenn das AutoWert-Feld als Primärschlüssel dient.
Ja/Nein Text Ursprünglicher Text darf nur aus Ja, Nein, Wahr, Falsch, Ein oder Aus bestehen.
Memo Ursprünglicher Text darf nur aus Ja, Nein, Wahr, Falsch, Ein oder Aus bestehen.
Zahl Null wird in Nein konvertiert, alle anderen Werte werden in Ja konvertiert.
Datum/Uhrzeit Null oder 24:00:00 Uhr wird in Nein konvertiert, alle anderen Werte werden in Ja konvertiert.
Währung Keine und leere Zeichenfolgen werden in Nein konvertiert, alle anderen Werte werden in Ja konvertiert.
AutoWert Alle Werte werden in Ja konvertiert.
Hyperlink Text Wenn der ursprüngliche Text eine gültige Webadresse, wie z. B. adatum.com, www.adatum.com oder http://www.adatum.com, enthält, konvertiert Access den Text in einen Hyperlink. Access versucht, andere Werte zu konvertieren, d. h., dass unterstrichener Text angezeigt wird und der Mauszeiger seine Form ändert, wenn Sie auf den Hyperlink zeigen, die Hyperlinks jedoch nicht funktionieren. Der Text kann ein beliebiges gültiges Webprotokoll aufweisen, einschließlich http://, Gopher://, Telnet://, ftp:// und was://.
Memo Siehe vorherigen Eintrag. Es gelten dieselben Einschränkungen.
Zahl Nicht zulässig, wenn ein Zahl-Feld Teil einer Beziehung ist. Wenn es sich beim ursprünglichen Wert um eine gültige IP-Adresse (vier Dreiergruppen Zahlen, die durch einen Punkt voneinander getrennt sind) handelt und die Zahlen mit einer Webadresse übereinstimmen, ergibt die Konvertierung einen gültigen Hyperlink. Andernfalls fügt Access http:// am Anfang jedes Werts an, und der resultierende Hyperlink ist nicht gültig.
Datum/Uhrzeit Access stellt der Adresse http:// voran, der resultierende Hyperlink funktioniert jedoch fast nie.
Währung Access stellt dem Wert http:// voran, aber wie bei Datumsangaben funktioniert der resultierende Hyperlink fast nie.
AutoWert Nicht zulässig, wenn das AutoWert-Feld Teil einer Beziehung ist. Access stellt dem Wert http:// voran, der resultierende Hyperlink funktioniert jedoch fast nie.
Ja/Nein Access konvertiert alle Ja-Werte in "-1" und alle Nein-Werte in "0", und stellt jedem Wert http:// voran. Der resultierende Hyperlink funktioniert nicht.

Seitenanfang Seitenanfang

Beenden des Modus "Deaktiviert" zum Blockieren einer Abfrage

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.

Standardmäßig sind in Access alle Aktionsabfragen (Aktualisierungs-, Anfüge-, Lösch- oder Tabellenerstellungsabfragen) deaktiviert, sofern sich die Datenbank nicht an einem vertrauenswürdigen Speicherort befindet oder die Datenbank nicht signiert und nicht vertrauenswürdig ist. Wenn Sie keine dieser Aktionen ausgeführt haben, können Sie trotzdem die Abfrage für die aktuelle Datenbanksitzung nur aktivieren, indem Sie auf der Statusleiste auf Inhalt aktivieren klicken.

Seitenanfang Seitenanfang

SQL-Version: UPDATE-Anweisung

Wenn Sie mit der Arbeit mit SQL vertraut sind, können Sie auch mithilfe der SQL-Ansicht eine UPDATE-Anweisung schreiben. Wenn Sie die SQL-Ansicht verwenden möchten, erstellen Sie eine neue, leere Abfrage, und wechseln Sie dann zur SQL-Ansicht.

Dieser Abschnitt enthält die Syntax für eine UPDATE-Anweisung und ein entsprechendes Beispiel.

Syntax

UPDATE Tabelle    SET NeuerWert    WHERE Kriterien;

Die UPDATE-Anweisung besteht aus den folgenden Teilen:

Teil Beschreibung
Tabelle Der Name der Tabelle, die die Daten enthält, die Sie ändern möchten.
NeuerWert Ein Ausdruck für den Wert, der in ein bestimmtes Feld in den aktualisierten Datensätzen eingefügt werden soll.
Kriterien Ein Ausdruck, der festlegt, welche Datensätze aktualisiert werden. Nur Datensätze, die dem Ausdruck entsprechen, werden aktualisiert.

Hinweise

Die UPDATE-Anweisung ist besonders hilfreich, wenn Sie viele Datensätze ändern möchten oder die zu ändernden Datensätze in mehreren Tabellen vorhanden sind.

Mehrere Felder können gleichzeitig geändert werden. Im folgenden Beispiel werden für Versandfirmen im Vereinigten Königreich die Werte für Order Amount um 10 % und die Werte für Freight um 3 % erhöht:

UPDATE Orders

SET OrderAmount = OrderAmount * 1.1,

Freight = Freight * 1.03

WHERE ShipCountry = 'UK';

 
 
Zutreffend für:
Access 2010, Access 2007