Mit Aktualisierungsabfragen in Access-Datenbanken können Sie Daten vorhandener Datensätzen erweitern, ändern oder löschen. Aktualisierungsabfragen können Sie sich als leistungsfähige Version des Dialogfelds Suchen und Ersetzen vorstellen. Mit einer Aktualisierungsabfrage können Sie keine neuen Datensätze zu einer Datenbank hinzufügen oder Datensätze aus einer Datenbank löschen.
Verwenden Sie eine Anfügeabfrage, um neue Datensätze zu einer Datenbank hinzuzufügen bzw. eine Löschabfrage, um ganze Datensätze aus einer Datenbank zu löschen.
Inhalt dieses Artikels
Übersicht
Die Ähnlichkeiten und Unterschiede zwischen dem Feld "Suchen und Ersetzen" und einer Aktualisierungsabfrage sind nachstehend aufgeführt:
Wie im Dialogfeld Suchen und Ersetzen können Sie mit einer Aktualisierungsabfrage den zu ersetzenden Wert und den neuen Wert angeben:
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 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 Abfragen mit eindeutigen Datensätzen Die Werte in solchen Abfragen werden zusammengefasst. Einige der Werte stellen einen einzelnen Datensatz dar, andere stellen mehr als einen Datensatz dar. Der Aktualisierungsvorgang ist nicht möglich, da nicht ermittelt werden kann, welche Datensätze als Duplikate ausgeschlossen wurden und daher nicht alle erforderlichen Datensätze aktualisiert werden können. Diese Einschränkung gilt unabhängig davon, ob 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.
Verwenden einer Aktualisierungsabfrage
Als bewährte Methode beim Erstellen einer Updateabfrage erstellen Sie zunächst eine Auswahlabfrage, die die datensätze identifiziert, die Sie aktualisieren möchten, und konvertieren Sie diese Abfrage dann in eine Updateabfrage, die Sie ausführen können, um die Datensätze zu aktualisieren. Indem Sie zuerst Daten auswählen, können Sie überprüfen, ob Sie die gewünschten Datensätze aktualisieren, bevor Sie tatsächlich Daten ändern.
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.
Sichern der Datenbank
-
Klicken Sie auf die Registerkarte Datei und dann auf Speichern unter.
-
Klicken Sie rechts unter Erweitert auf Datenbank sichern.
-
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
-
Öffnen Sie die Datenbank, die die Datensätze enthält, die Sie aktualisieren möchten.
-
Klicken Sie auf der Registerkarte Erstellen in der Gruppe Abfragen auf Abfrageentwurf.
-
Klicken Sie auf die Registerkarte Tabellen.
-
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 oder Tabellen werden als ein oder mehrere Fenster im Abfrage-Designer angezeigt, und die Fenster listen alle Felder in jeder Tabelle auf. Diese Abbildung zeigt den Abfrage-Designer mit einer typischen Tabelle.
1. Tabelle im Abfrage-Designer
2. Abfrageentwurfsbereich
-
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.
-
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.
Tabelle 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 dem 02.02.2020 und dem 01.12.2020#
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 Nummernzeichen (#). Beispiel: Zwischen "2/2/2020" und "12/1/2020" .
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/2020#
Sucht alle Datensätze für den 2. Februar 2020. Wenn Ihre Datenbank den ANSI-92-Zeichensatz verwendet, setzen Sie das Datum in einfache Anführungszeichen (') anstelle von Nummernzeichen (#); Beispiel: ('2/2/2020').
< 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())
Verwendet die Funktionen Datum und DateAdd, 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.
-
Klicken Sie auf der Registerkarte Abfrageentwurf in der Gruppe Ergebnisse auf Ausführen.
-
Überprüfen Sie, ob die Abfrage die Datensätze zurückgibt, die Sie aktualisieren möchten.
-
Um alle Felder, die im Abfrageentwurf nicht enthalten sein sollen, zu entfernen, wählen Sie die Felder aus und drücken ENTF.
-
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
-
Klicken Sie auf der Registerkarte Abfrageentwurf in der Gruppe Abfragetyp auf Aktualisieren.
In diesem Verfahren erfahren Sie, wie Sie eine Auswahlabfrage in eine Updateabfrage ändern. Wenn Sie dies tun, fügt Access die Zeile Update zu im Abfrageentwurfsraster hinzu. Die folgende Abbildung zeigt eine Aktualisierungsabfrage, die alle nach dem 5. Januar 2005 erworbenen Ressourcen zurückgibt und den Speicherort für alle Datensätze, die dieses Kriterium erfüllen, in "Warehouse 3" ändert.
-
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.
Tabelle 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 Kurzer Text einen Textwert in Salesperson.
#8/10/20#
Ändert in einem Datums-/Uhrzeitfeld einen Datumswert in 10-Aug-20.
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 "Menge".
[Fracht] * 1,5
Erhöht die Werte in einem Feld namens "Fracht" um 50 %.
DSum("[Quantity] * [UnitPrice]",
"Bestelldetails", "[ProductID]=" & [ProductID])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).
-
Klicken Sie auf der Registerkarte Abfrageentwurf in der Gruppe Ergebnisse auf Ausführen.
Eine Warnmeldung wird angezeigt.
-
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.
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:
-
Erstellen Sie eine Aktualisierungsabfrage, und fügen Sie der Abfrage die Quell- und Zieltabellen hinzu.
-
Verknüpfen Sie die Tabellen in den Feldern, die die verwandten Informationen enthalten.
-
Fügen Sie der Zeile Feld des Abfrageentwurfsbereichs die Namen der Zielfelder hinzu.
-
Fügen Sie der Zeile Aktualisieren des Abfrageentwurfsbereichs die Namen der Quellfelder hinzu. Verwenden Sie dabei die folgende Syntax: [Quelltabelle].[Quellfeld].
Die Schritte in diesem Abschnitt setzen die Verwendung von zwei ähnlichen Tabellen voraus. In diesem Beispiel befindet sich die Tabelle Clients in einer Datenbank, die Sie gerade geerbt haben, und enthält aktuellere Daten als die Tabelle Customers. Sie können sehen, dass sich einige Der Namen und Adressen des Managers geändert haben. Aus diesem Grund entscheiden Sie sich, die Tabelle Customers mit den Daten aus der Tabelle Clients 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 |
3122 75. Ave. S.W. |
Frankfurt am Main |
Hessen |
34567 |
Deutschland |
(0456) 1 23-0 |
David Probst |
4 |
Contoso Pharmaceuticals |
Beispielallee 234 |
München |
Bayern |
NS1 EW2 |
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. |
Sonntagsalle 3 |
Dortmund |
Nordrhein-Westfalen |
31415 |
Deutschland |
(05678) 56 78 91 23 |
Michael Brundage |
9 |
Tailspin Toys |
Sonntagsalle 4 |
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 |
3122 75. Ave. S.W. |
Frankfurt am Main |
Hessen |
34567 |
Deutschland |
(0456) 1 23-0 |
David Probst |
4 |
Contoso Pharmaceuticals |
Beispielallee 234 |
München |
Bayern |
NS1 EW2 |
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. |
Sonntagsalle 3 |
Dortmund |
Nordrhein-Westfalen |
31415 |
Deutschland |
(05678) 56 78 91 23 |
Jesper Aaberg |
9 |
Tailspin Toys |
Sonntagsalle 4 |
Dortmund |
Nordrhein-Westfalen |
31415 |
Deutschland |
(05678) 56 78 91 23 |
Daniel Brunner |
Denken Sie im Weiteren daran, dass die Datentypen für jedes Tabellenfeld zwar nicht übereinstimmen müssen, aber kompatibel sein müssen. Access muss in der Lage sein, die Daten in der Quelltabelle in einen Typ zu konvertieren, den die Zieltabelle verwenden kann. In einigen Fällen kann der Konvertierungsprozess einige Daten löschen. Weitere Informationen zu Einschränkungen beim Konvertieren von Datentypen finden Sie im Abschnitt Einschrä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.
-
Klicken Sie auf der Registerkarte Erstellen in der Gruppe Abfragen auf Abfrageentwurf.
-
Wählen Sie Tabellen hinzufügen aus.
-
Doppelklicken Sie auf die Quell- und Zieltabellen, um sie der Abfrage hinzuzufügen. Jede Tabelle wird im oberen Abschnitt des Abfrage-Designers in einem Fenster angezeigt.
-
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 beispielsweise die zuvor gezeigten Beispieltabellen verwenden, ziehen Sie das Feld Client-ID in das Feld Kunden-ID. Access erstellt eine Beziehung zwischen diesen Feldern in den beiden Tabellen und verwendet diese Beziehung, um verknüpfte Datensätze zu verknüpfen.
-
Klicken Sie auf der Registerkarte Abfrageentwurf in der Gruppe Abfragetyp auf Aktualisieren.
-
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.
-
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.
Diese Abbildung zeigt einen Teil des Entwurfsrasters unter Verwendung der Beispieltabellen. Beachten Sie die Syntax für die Tabellen- und Feldnamen in der Zeile Aktualisieren auf .
Denken Sie im Weiteren daran, dass Sie die Tabellen- und Feldnamen in der Zeile Aktualisieren auf richtig schreiben müssen und dass Sie alle Interpunktionszeichen in der ursprünglichen Tabelle und den Feldnamen übereinstimmen müssen. Sie müssen jedoch nicht mit der Groß-/Kleinschreibung übereinstimmen.
-
Klicken Sie auf der Registerkarte Abfrageentwurf in der Gruppe Ergebnisse auf Ausführen.
-
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 |
---|---|---|
Kurzer Text |
Langer Text |
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. |
|
Langer Text |
Kurzer 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 |
Kurzer Text |
Text muss aus Zahlen und gültigen Währungs- und Dezimaltrennzeichen bestehen. Die Anzahl der Zeichen im Feld "Text" muss in dem für das Feld "Zahl" festgelegten Größenbereich liegen. |
Langer Text |
Das Feld "Langer Text" darf nur Text und gültige Währungs- und Dezimaltrennzeichen enthalten. Die Anzahl der Zeichen im Feld "Langer Text" muss innerhalb der für das Feld Zahl festgelegten Größe 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 Felds "Zahl" 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 18. April 1899 und 11. September 1900 übersteigen die Größe eines Bytefelds. Datumsangaben außerhalb des Bereichs 13. April 1810 und 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 |
Kurzer Text |
Ursprünglicher Text muss als Datum oder als Datum/Uhrzeit-Kombination erkennbar sein. Beispiel: 18-Jan-2020. |
Langer Text |
Ursprünglicher Text muss als Datum oder als Datum/Uhrzeit-Kombination erkennbar sein. Beispiel: 18-Jan-2020. |
|
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 den 29. Dezember 1899 konvertiert. Der Wert 0 (Nein) wird in Mitternacht (12:00 Uhr) konvertiert. |
|
Währung |
Kurzer Text |
Text muss aus Zahlen und gültigen Trennzeichen bestehen. |
Langer Text |
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 |
Kurzer Text |
Nicht zulässig, wenn das AutoWert-Feld als Primärschlüssel dient. |
Langer Text |
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 |
Kurzer Text |
Ursprünglicher Text darf nur aus "Ja", "Nein", "Wahr", "Falsch", "Ein" oder "Aus" bestehen. |
Langer Text |
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 |
Kurzer 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://. |
Langer Text |
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. |
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.
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';