Abfrage zur Datenaktualisierung
383
Abfragen
In allen Aktionsabfragen können Parameter eingesetzt werden, so dass der Benutzer Bedingungen
und Werte beim Ablaufen der Abfrage eingeben kann. Für die Parameter gelten die gleichen Regeln
wie für Auswahlabfragen (siehe Kapitel 15, Abschnitt »Parameterabfragen«).
Abfrage zur Datenaktualisierung
Mit Datenaktualisierungsabfragen verändern Sie die Inhalte Ihrer Tabellen mithilfe von Abfragen.
Für jede Zeile einer Tabelle, gegebenenfalls eingeschränkt durch eine Bedingung, werden für die
gewählten Spalten neue Werte errechnet und gespeichert.
Einfache Aktualisierungsabfrage
Das Feld Turnaround in der Tabelle tblKinos gibt die Zeit an, die benötigt wird, damit alle Besucher
einen Kinosaal verlassen und die neuen Besucher ihre Sitzplätze einnehmen können. Es soll nun eine
Aktualisierungsabfrage erstellt werden, die für alle Kinos eine Turnaround-Zeit von 45 Minuten festlegt.
Beachten Sie dabei, dass gegebenenfalls vorhandene Turnaround-Werte dabei überschrieben werden.
Präfix
»qupd«
Aktualisierungsabfragen sind vor allem dann sinnvoll, wenn größere Datenmengen gleichzeitig
geändert werden müssen. Sie erhalten als Kennung zur Unterscheidung von anderen Abfragen das
Kürzel »qupd«, kurz für »Query Update«.
Es soll eine Datenaktualisierungsabfrage erstellt werden, die die Turnaround-Zeiten für alle Kinos auf
45 Minuten setzt. Beginnen Sie zuerst mit einer normalen Auswahlabfrage für die Tabelle tblKinos.
Abbildg. 19.3
Zuerst die Auswahlabfrage
Kapitel 19
Aktionsabfragen
384
Mit der Schaltfläche Aktualisieren wandeln Sie die Auswahlabfrage zu einer Aktualisierungsabfrage
um. Sie erhalten dadurch im unteren Abfragebereich eine zusätzliche Zeile Aktualisieren. Wie in
Abbildg. 19.4 dargestellt, wurde für das Feld Turnaround in die Zeile Aktualisieren der Wert
45
einge-
tragen, d.h., für alle Datensätze der Tabelle tblKinos wird der Inhalt des Feldes beim Ausführen der
Abfrage auf den unter Aktualisieren angegebenen Wert gesetzt.
Abbildg. 19.4
Die Turnaround-Zeit auf 45 min setzen
Starten Sie nun die Abfrage über die Schaltfläche Ausführen, so passiert standardmäßig erst einmal gar
nichts. Sie erhalten nur in der unteren Statuszeile eine Meldung, dass die Aktion blockiert wurde.
Abbildg. 19.5
Meldung, dass Aktualisierungsabfrage nicht ausgeführt wird
Eine Aktualisierungsabfrage wird nur dann ausgeführt, wenn entweder die Datenbank in einem ver-
trauenswürdigen Ordner liegt oder die Inhalte der Datenbank aktiviert wurden (weitere Infos zum
Thema Sicherheit siehe Kapitel 40).
Möchten Sie, dass der Ordner, in dem sich die Datenbank befindet, als vertrauenswürdig eingestuft
wird, so gehen Sie so vor:
1. Klicken Sie auf die Office-Schaltfläche und wählen Sie Access-Optionen aus.
2. Wählen Sie links Vertrauensstellungscenter aus.
Abfrage zur Datenaktualisierung
385
Abfragen
3. Klicken Sie rechts auf die Schaltfläche Einstellungen für das Vertrauensstellungscenter.
4. Wählen Sie links im Dialogfeld Vertrauensstellungscenter den Eintrag Vertrauenswürdige Speicher-
orte aus.
5. Klicken Sie rechts auf die Schaltfläche Neuen Speicherort hinzufügen und wählen Sie über die
Schaltfläche Durchsuchen den gewünschten Ordner aus.
Abbildg. 19.6
Neuer, vertrauenswürdiger Ordner
Schließen Sie nun die Datenbank, und öffnen Sie sie erneut. Dann können Sie die Abfrage ausfüh-
ren, und Access ermittelt, wie viele Datensätze von der Änderung betroffen sind und blendet eine
entsprechende Bestätigungsmeldung ein.
Abbildg. 19.7
Bestätigungsmeldung
Kapitel 19
Aktionsabfragen
386
Ausführen oder umschalten in die Datenblattansicht?
Bei allen Aktionsabfragen können Sie vorher sehen, welche Datensätze betroffen sind. Dazu stehen
Ihnen zwei Möglichkeiten zur Verfügung: Sie können zuerst eine Auswahlabfrage erstellen, sich die
zu ändernden Daten ansehen und die Abfrage dann in eine Aktionsabfrage umwandeln.Einfacher
und eleganter ist es, die richtige Schaltfläche auszuwählen: Klicken Sie auf die Schaltfläche Ausfüh-
ren, so wird die Aktion durchgeführt. Schalten Sie dagegen um in die Datenblattansicht, so werden
nur die betroffenen Datensätze angezeigt, nicht aber die Aktion ausgeführt.
Aktualisierungsabfragen mit Bedingungen
Aktualisierungsabfragen lassen sich auch mit Bedingungen versehen, d.h., es werden nur die Daten-
sätze aktualisiert, die einer bestimmten Bedingung entsprechen.
Nehmen wir einmal an, die Preise der Artikel, die am Kinokiosk verkauft werden, müssen um 15%
erhöht werden. Allerdings sind nicht alle Artikel betroffen, sondern nur die beiden Produktgruppen
»034« und »03F«. Die Nummer der Produktgruppe ist in der Tabelle tblArtikel in der Artikelnum-
mer enthalten, da die ersten drei Stellen der Artikelnummer die Produktgruppe ergeben.
Die Auswahlabfrage in Abbildg. 19.8 zeigt die Definition, um alle Artikelnummern, Produktgrup-
pen und Verkaufspreise zu ermitteln, sowie die Bedingung zur Einschränkung der Produktgruppen.
Abbildg. 19.8
Auswahlabfrage
Wandeln Sie die Auswahlabfrage mithilfe der Schaltfläche Aktualisieren in eine Aktualisierungs-
abfrage um. In der Zeile Aktualisieren im unteren Teil der Entwurfsansicht geben Sie nun an, wie die
Preiserhöhung um 15% errechnet werden soll. Um einen neuen Verkaufspreis zu ermitteln, wird der
alte Verkaufspreis mit 1,15 multipliziert und das Ergebnis auf zwei Stellen nach dem Komma gerun-
det, weil es keine halben Cents gibt. In der Entwurfsansicht schreiben Sie in die Aktualisierungszeile
für die Spalte Ver ka uf sp re i s:
Runden([Verkaufspreis]*1,15;2)
.

Get Microsoft Office Access 2007 - Das Handbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.