Nehmen wir einmal an, in Deutschland käme es zu einer großen Föderalismusreform
und Bayern würde mit Baden-Württemberg zu einem Südstaat fusionieren. Wir könnten
nun einfach in unserer Tabelle der Bundesländer
die Einträge „Baden-Württemberg“ und „Bayern“ jeweils mit „Südstaat“ überschreiben.
Dann hätten wir allerdings zwei Einträge für nur ein Bundesland, was nicht sehr
sinnvoll wäre. Statt dessen ändern wir nur den Text von „Bayern“ zu „Südstaat“,
ändern sämtliche Einträge in der Tabelle tblOrte
auf „2“, in denen
bisher eine „1“ stand, und löschen zuletzt in der Tabelle tblLänder
den Eintrag „Baden-Württemberg“.
tblOrte
könnten allerdings Hunderte von Datensätzen betroffen sein,
so dass eine manuelle Änderung einen enormen Aufwand bedeuten würde. Wie gut, dass
es spezielle Abfragen gibt, mit denen man dies automatisieren kann. Dazu erstellen
wir zunächst eine Abfrage, die nur die zu ändernden Werte in tblOrte
anzeigt:
Abfrage1 | |||||
---|---|---|---|---|---|
|
SELECT lngLand FROM tblOrte WHERE lngLand = 1;
Feld: | lngLand | |
Tabelle: | tblOrte | |
Sortierung: | ||
Anzeigen: | ||
Kriterien: | 1 | |
oder: | ||
ÿ tr |
Abfrage1 |
---|
lngLand |
1 |
Alle Abfragen, die wir bisher kennengelernt haben, waren sogenannte Auswahlabfragen. Jetzt werden wir diese Abfrage in einem anderen Abfragetyp ändern, nämlich in eine Aktualisierungsabfrage. Dazu wählen wir in der Entwurfsansicht den Abfragetyp namens Aktualisieren. Der untere Teil des Entwurfsfensters verändert sich nun: Die Zeilen „Anzeigen“ und „Sortierung“ verschwinden, statt dessen erscheint eine neue Zeile „Aktualisieren“.
Feld: | lngLand | ||
Tabelle: | tblOrte | ||
Aktualisieren: | |||
Kriterien: | 1 | ||
oder: | |||
Das Kriterium „1“ ist erhalten geblieben. In der neuen Zeile „Aktualisieren“ tragen wir jetzt eine „2“ ein:
UPDATE tblOrte SET lngLand = 2 WHERE lngLand = 1;
Feld: | lngLand | |
Tabelle: | tblOrte | |
Aktualisieren: | 2 | |
Kriterien: | 1 | |
oder: | ||
Wenn wir jetzt einfach wieder zur Datenblattansicht wechseln, sehen wir unverändert unsere alten Werte. Obwohl wir den Abfragetyp geändert haben, hat sich in der Datenblattansicht noch nichts verändert.
Abfrage1 |
---|
lngLand |
1 |
Versuchen wir es nun mit der Schaltfläche Ausführen:
Microsoft Access | |
---|---|
Sie beabsichtigen, 1 Zeile(n) zu aktualisieren. Sobald Sie auf 'Ja' geklickt haben, können Sie die Änderungen
nicht mehr mit dem Befehl 'Rückgängig' zurücknehmen.
|
Wir wählen „Ja“, öffnen danach die Tabelle tblOrte
und sehen, dass
im Feld lngLand
überall dort, wo bisher eine „1“ stand, jetzt eine
„2“ steht. Unsere Aktualisierungsabfrage war also erfolgreich!
Folgende Arten von Aktionsabfragen gibt es: