MS-Access - Userpage

Werbung
1 Access Grundlagen
1.1 Was ist MS-Access?
Access ist ein relationales, also auf Zellen in waagerechten und senkrechten Reihen
aufgebautes Datenbankprogramm unter MicrosoftWindows. Es ist ein Microsoft-Produkt und
bildet mit vor allem Word und Excel das sogenannte Microsoft-Office. Die wesentlichen
Anwendungen liegen im Anlegen, Ordnen und Durchsuchen von tabellenartigen Listen, in
denen auch begrenzt gerechnet werden kann.
Es ist wie alle Windows-Anwendungen menüorientiert. Viele Menüs entsprechen den schon
aus anderen MicrosoftWindows-Programmen bekannten. Folgendes Kurzskript bezieht sich
auf die Programmversion ACCESS 2000.
1.2 Objekte in MS-Access
MS-Access unterscheidet als Datenbanksystem sogenannte Objekte. Solche Objekte sind:

Tabellen
Eine Zusammenstellung von Daten zu einem Fall (etwa eine Person) und zu mindestens
einer Kategorie (z.B. Vorname). Die Tabelle ist aus Zeilen und Spalten bzw. damit aus Zellen
aufgebaut. Jede Zelle trägt eine Date, z.B. den Vornamen einer Person.

Abfragen
Abfragen stellen einen Teil der Tabelle aus einer bestimmten, vom Benutzer ausgewählten
Perspektive dar. So kann man in einem Abfragefenster etwa nur die Personen aus dem Ort
"Aflenz" darstellen. Ebenso kann man sich aber auch etwa den Mittelwert der Variable
"anzahl" darstellen lassen.

Formulare
Formulare enthalten die Daten einer ganzen Tabelle oder einer partiellen Abfrage, bilden
diese aber nicht listenförmig, sondern karteikartenmäßig ab. Ein Formular enthält daher alle
Daten nur eines Falles, etwa einer Person.

Berichte
Auch Berichte enthalten die Daten einer Tabelle oder einer Abfrage. Die Darstellung ist
wieder anders, nach der Art einer Zusammenfassung (z.B. eine Zusammenstellung aller
versandten Produkte mit Preis, Menge, Name etc.). Daten in Berichten können nur
ausgedruckt, aber nicht verändert werden.

Seiten
Hier werden sogenannte Datemzugriffsseiten erzeugt, die der Darstellung von Access-Daten
im Netz dienen.

Makros
Makros sind Befehlsfolgen, die unter einem Namen an beliebiger Stelle ausgeführt werden
können. Für Fortgeschrittene!

Module
Mit einer eigenen Programmiersprache in MS-Access können komplizierte Prozeduren
erstellt werden. Nur für Fortgeschrittene!
Achtung:
Access speichert alle Objekte unter einem übergeordneten Datenbanknamen. Über das
Symbol für Datenbankfenster (drei ineinander geschobene Karteiblätter) gelangt man in ein
Übersichtsfenster, in dem man über eine Registerzeile jede Objektart anwählen kann; dann
bekommt man alle verfügbaren, also gespeicherten Objekte angezeigt und kann sie öffnen.
Dieses Datenbankfenster ist normalerweise stets geöffnet und befindet sich etwa hinter
Ihrem Tabellenblatt auf dem Arbeitschirm von Access. Wenn Sie dieses Fenster schließen,
verlassen Sie auch die Datenbank!
1.3 Ansichten in MS-Access
MS-Access unterscheidet sogenannte Ansichten von Objekten (ausgenommen Makros und
Module). Solche Ansichten sind unter dem Ansichten-Listensymbol in der Symbolleiste
(Dreieck auf Lineal, ganz links in der Leiste) erreichbar, und zwar:

Datenblattansicht
Diese zeigt eine Tabelle.

Entwurfsansicht
Diese zeigt den organisatorischen Hintergrund einer Tabelle; hier definieren Sie
Felder=Kategorien, die ein Fall umfassen soll. Natürlich können auch Abfragen, Formulare
und Berichte im Entwurf behandelt werden.

Formularansicht
Diese entsteht nur, wenn das Objekt Formular dargestellt wird. Sie können natürlich auch ein
Formular in der Entwurfsansicht darstellen lassen.

Seitenansicht
Wie in anderen Windows-Programmen auch bietet Ihnen die Seitenansicht eine WYSWYGAnsicht einer auszusdruckenden Seite. Im Dateimenü findet sich dazu die Option der
Seitenansicht.
2 Definition und Manipulation der Daten
Um mit einer Datenbank sinnhaft arbeiten zu können, muß der Benutzer Daten speichern,
abfragen und in der Regel auch verändern können. In der ersten Phase müssen Daten
erfaßt und gespeichert werden, was anhand des entwickelten konzeptuellen Modells (s.o.)
zu geschehen hat. Bei allen Operationen mit und auf der Datenbank kommt der Konsistenz
(semantic integrity) eine zentrale Rolle zu. Darunter ist die Widerspruchfreiheit innerhalb der
Datenbank zu verstehen. Alle Operationen, welche die Konsistenz einer Datenbank erhalten,
werden als Transaktionen bezeichnet. Dazu gehören einfache Abfragen genauso wie
Mutationen (update), bei welchen bestimmte Ausschnitte einer Datenbank verändert werden
dürfen. Sämtliche Transaktionen und jene Operationen, die nicht konsistenzerhaltent sind,
nennt man Datenmanipulationen.
Um diese Vorgänge - Datendefinition und Datenmanipulation - für ein DBMS aufzubereiten,
verwendet man zum einen die Datendefinitionssprache (Data Definition Language, DDL),
um eine Datenbank nach einem in eben dieser Sprache beschriebenen Modell zu errichten
und zum anderen die Datenmanipulationssprache (Data Manipulation Language, DML),
um vornehmlich Transaktionen vornehmen zu können. Diese Sprachen sind nicht immer so
exakt geschieden, manche Systeme sehen diese Sprachen nur als zwei Ausformungen ein
und derselben "Systemsprache", die auf unterschiedlichste Weise klassifiziert wird. Die
meisten benutzerorientierten DBMS (für Anwendungen, in denen der Benutzer zugleich
Datenbankadministrator ist) kennen an ihrer Oberfläche diese Unterscheidung nicht; dem
Anwender wird daher meist ein einheitliches Werkzeug für sämtliche Operationen zur
Verfügung gestellt.
1. Dabei kann es sich einerseits um selbständige Sprachen handeln, wenn sämtliche
für Datenmanipulationen notwendigen Befehle und Anweisungen in einer
systemspezifischen Kommandosprache enthalten sind, und andererseits um
eingebettete Sprachen, wenn sie nur im Zusammenhang mit einer
Programmiersprache (host language) verwendet werden können. Bei letzterer
müssen alle Manipulationen in der jeweiligen Programmiersprache formuliert werden.
2. Werden die entsprechenden Daten als Menge in ihrer Gesamtheit beschrieben,
spricht man von deskriptiven Sprachen. Im Gegensatz dazu werden bei der
Verwendung von prozeduralen Sprachen jene Operationen formuliert, aufgrund
derer man zu bestimmten Ergebnissen zu kommen wünscht.
3. In der logischen Art des Zugriffs auf Daten unterscheidet man weiters
mengeorientierte Sprachen, die logische Mengenzugriffe gestatten und
tupelorientierte, welche konkret auf spezifizierte Tupeln bzw. Datensätze oder
Records zugreifen können.
Sämtliche dieser angführten Sprachformen sind untereinander nahezu beliebig kombinierbar.
Nachdem auch für jedes Datenmodell im wesentlichen eine eigene DDL bzw. DML
notwendig ist, stehen wir heute vor einer Vielzahl höchst unterschiedlicher
"Datenbanksprachen", ein Faktum, das dem Benutzer nicht gerade entgegenkommt, der
entweder gezwungen ist, mit unterschiedlichen Systemen zu arbeiten oder einfach
Datenbestände unterschiedlichster Provenienz zu verwenden gedenkt.
Eine Abhilfe wird durch moderne Softwarepakete geschaffen, welche die unterschiedlichen
Sprachen durch graphische oder pseudo-natürlichsprachliche Benutzeroberflächen
abzulösen versuchen. Dabei lassen sich die Daten entweder direkt-manipulativ über Knöpfe
und Fenster manipulieren oder durch einen zusätzlichen "Interpreter", der natürliche Sprache
mit eingeschränktem Wortschatz in eine DML gleichsam "übersetzt". Beide Lösungen
scheinen für den Anfänger bequemer und unkomplizierter zu sein, haben bis jetzt den
Leistungsumfang von komplexen Datenbanksprachen aber noch nicht erreichen können.
3 Abfragen formulieren
3.1 1. Auswahlfragen
Am einfachsten ist es, mit Hilfe des Auswahlabfragen-Assistenten Fragemuster zu
formulieren. Man öffnet über das Symbol für Neues Objekt die Abfrage.
Im nun erscheinenden Dialogfeld wählen Sie die Option Auswahlabfragen-Assistent.
Abfragen basieren auf vorhandenen Datenbanken bzw. Tabellen.
1.Schritt mit dem Assistenten:
Im Assistenten wählt man also zuerst die benötigte Tabelle in der Zeile Tabellen/Abfragen
aus. Man kann auch schon vorher gespeicherte Abfrageobjekte benutzen.
Dann kann man aus der Spalte Verfügbare Felder welche auswählen und mittels des
Pfeilsymbols nach rechts in die Spalte Ausgewählte Fenster einfügen. Mit dem Symbol für
den Doppelpfeil nach rechts würden Sie alle verfügbaren Felder einfügen (analog dazu
entfernen die Pfeiltasten nach links Felder aus der Auswahlliste)
Mit dem Schaltfeld Weiter bewegen Sie sich in den nächsten Schritt.
2.Schritt: Hier legen Sie fest, daß eine Detailabfrage gewünscht wird.
3.Schritt:
In einem weiteren Fenster geben Sie den Namen für Ihre Abfrage (=Objekt) ein und legen
fest, daß Sie die Abfrage öffnen wollen. Dann stellen Sie Ihre Abfrage über das
entsprechende Schaltfeld fertig.
Im nun erscheinenden Abfragedatenblatt sehen Sie nur mehr jene Felder (=Spalten), die sie
mittels dem Assistenten ausgewählt hatten.
In einem kürzeren Verfahren begibt man sich aus dem Tabellendatenblatt über das Symbol
für Neue Objekte und die Abfrage und die Entwurfsansicht ins Abfragentwurfsblatt.
3.2 Abfragen erweitern
Hätten Sie nun noch weitere Felder für eine Abfrage benötigt, müssten Sie die alte Abfrage
verwerfen und mit dem Assistenten eine neue initiieren, sicherlich ein mühevoller Vorgang.
Deshalb kann man Abfragen erweitern.
Dazu aktiviert man in einer vorhanddenen Abfrage das Symbol für Ansicht und dann die
Entwurfsansicht der Abfrage. In dieser Ansicht erscheint in einen eigenen Fensterteil die
Liste der in der Tabelle insgesamt enthaltenen Felder. Mit einem Doppelklick auf das
gewünschte Feld wird dieses der Abfrage hinzugefügt und erscheint im Entwurf.
Nach dem Schließen des Entwurffensters und dem Speichern der neuen Abfrage öffnen
Sie das Abfragedatenblatt über das Symbol für Datenbankfenster. Dort erscheinen dann
alle ausgewählten Felder.
Auf kürzere Weise kann man die neue Abfrage auch durch Klicken auf das rote RufzeichenSymbol in der Entwurfsansicht ausführen und direkt ins Abfragedatenblatt zurückkehren.
Eine einmal gespeicherte und nicht mehr benötigte Abfrage löscht man insgesamt am
einfachsten, indem man im Datenbabnkfenster unter dem Objekt "Abfrage" die Abfragedatei
mit der rechten Maustaste auswählt und im erscheinenden Kontextmenü die Option
"Löschen" aktiviert.
3.3 Sortieren im Abfragedatenblatt
Indem man sich mit dem Cursor in irgendeine Zelle des Abfragedatenblatts bewegt kann
man über Menü und Befehle Datensätze/Sortierung/Aufsteigend die Datensätze im
Abfragedatenblatt entsprechend der Spalte, in der Sie sich befanden, sortieren.
Entsprechend sind über Datensätze/Filter die Datensätze auch im Abfragedatenblatt
filterbar.
3.4 Komplexe Suchaktionen
In den komplexen Abfragemustern geht es nicht nur darum, bestimmte Felder aufzusuchen,
sondern darum, nur bestimmte Felder bestimmten Inhalts zu finden.
Man öffnet aus dem Tabellendatenblatt mittels des Symbols Neues Objekt/Abfrage eine
neues Abfrageentwurfsblatt.
Aus der Liste der verfügbaren Felder wählt man etwa die Felder "Nachname" und
"Geburtsjahr" aus.
In der Zeile Kriterien des Entwurfsfenster gibt man für den Nachnamen eine Zeichenkette
(z.B. [Nachname]="breidler") und für das Geburtsjahr eine bestimmte Bedingung (z.B.
[Geburtsjahr]>1855) ein. Damit hätte man für das Jahr 1869 alle Kinder eines bestimmten
Nachnamens und bis ins 14.Lebensjahr alt selektiert.
Damit hat man eine einfache "und"-Bedingung formuliert: Der auszusuchende Datensatz
muß in jedem der ausgewählten Felder die bestimmte Zeichenkette bzw. die mögliche Zahl
aufweisen.
Füllt man in der Entwurfsansicht der Abfrage für das Textfeld (Nachname) auch die Zeile
oder aus, so setzt man Entweder-Oder-Bedingungen. Ein Feld muß dann über verschiedene
Datensätze nicht mehr exakt die gleiche Information, sondern bloß eine der angegebenen
enthalten (z.B. den Nachnamen Maier oder Meyer). Beachten Sie aber, daß Sie die für das
Zahlenfeld (Geburtsjahr) gesetzte Bedingung auch auf die erweiterte Namensgebung
beziehen!
Bei allen Suchaktionen sind auch sogenannte Wildcards oder Platzhalter angebbar. Ein "?"
steht für einen beliebigen Buchstaben. Zwei "??" stehen für zwei beliebige
aufeinanderfolgende Buchstaben.
4 Berechnungen durchführen
Berechnungen bedeuten nicht nur die Auswahl von Daten, sondern auch deren Berechnung,
etwa die Summierung aller Auftragswerte oder eingegangenen Mitgliedsbeiträge etc.
Berechnungen sind demnach Abfragen, in die berechnete Felder,
Aggregierungsfunktionen oder gruppierte Daten eingefügt werden.
4.1 Berechnete Felder
Man läßt sich derart neue Felder mit berechneten Inhalten erstellen.
Dazu öffnet man über das Symbol für Neues Objekt eine Abfrage und ein
Abfrageentwurfsfenster.
Man wählt in der Feldzeile eine leere Zelle und gibt dort etwa ein:
Alter: [Zähljahr] - [Geburtsjahr].
Nachdem es sich um eine neue Spalte handelt, muß man in die Tabellenzeile jetzt auch die
verwendete Tabelle eintragen. Dann drückt man das Symbolfeld mit dem roten Rufzeichen.
Auf diese Weise wird eine neue Spalte erzeugt, die das Alter der Personen als Ergebnis der
Subtraktion des Geburtsjahreswertes vom Zähljahreswert enthält.
Würde man dies nur für die Frauen tun wollen, so würde man im Abfrageentwurfsfenster
auch das Feld "Sex" aus der Liste der verfügbaren Felder auswählen und als Kriterium "0"
eingeben.
Die im Abfragefenster erscheinende Spalte markiert man im Spaltenkopf, wählt im Menü
Berbeiten die Option Kopieren, wechselt in die Tabelle, markiert dort einen neuen
Spaltenkopf (leere Spalte!) und wählt aus dem Menü Bearbeiten die Option Einfügen. Nun
fügt Access die berechneten Daten in die Tabelle ein.
4.2 Aggregierungsfunktionen
Aggregierungsfunktionen bilden z.B. Summen oder Mittelwerte über eine Reihe von Daten.
Zu diesem Zweck fügen Sie im Abfrageentwurfsfenster über das Menü Ansicht und dem
Befehl Funktionen eine Funktionszeile in das Entwurfsfenster ein. In diese Zeile kann man
über ein Pfeilsymbol eine verfügbare Funktion einfügen.
Zum Beispiel könte man wie oben das Feld Alter erzeugen, das Feld Sex in der
Kriteriumszeile auf "0" beschränken und aus der Funktionszeile für Alter den Mittelwert
auswählen. Als Ergebnis würde Access den arithmetisch mittleren Alterswert aller Frauen
errechnen.
4.3 Datengruppierung
Will man die Berechnung solcher spezifischer Mittelwerte in einem und die Ergbenisse
vergleichbar haben, so muß man die Daten gruppieren.Im angesprochenen Beispiel würde
man die Daten über die Spalte "Sex" gruppieren.
Dazu begeben Sie sich wieder ins schon erstellte Abfrageentwurfsfenster.
Dort wählen sie das Feld "Sex" aus.
In die Funktionszeile schreiben Sie oder wählen sich die Funktion Gruppierung aus. Access
gruppiert automatisch über die gleichen Einträge (in unserem Falle "1" oder "0").
Access wird im Abfragedatenblatt in der Spalte "Sex" eine Zeile für Männer und eine für
Frauen einrichten und dort das jeweilige mittere Alter eintragen.
5 Formulare und Berichte
5.1 Formulare erstellen
Ein Formular erleichtert die Eingabe von Daten in eine Tabelle. Um in ein Formular zu
gelangen wählt man in der Datenblattansicht einer Tabelle das Symbol Neues Objekt und
aus der Anbotsliste das objekt Formular.
Im darauf erscheinende Fenster Neues Formular wählt man vorerst die Möglichkeit des
Formularassistenten.
Im Fenster des Formularassistenten überträgt man dann über die Pfeiltaste nach rechts die
benötigten Felder in die Rubrik <>.
In einem weiteren Fenster des Assistenten wählt man dann den Layouttyp des Berichts aus
vier angebotenen Möglichkeiten (einspaltig, tabellarisch, Datenblatt, in Blöcken).
Dann können Sie in einem weiteren Dialogfenster des Assistenten einen Stil für ihr Formular
aussuchen.
Schließlich geben Sie einen Namen für Ihr Formular ein, bestätigen die Option für Formular
öffnen und stellen es fertig.
In der Entwurfsansicht können Sie jedes Formular layoutieren. Dort gibt es eine ganze Reihe
von Möglichkeiten, die hier nicht aufgeführt werden können.
Achtung:
Ein solches Formular kann natürlich nur auf der Basis mindestens eines im Tabellenentwurf
in die Tabelle eingetragenen Datensatzes erstellt werden.
Soll eine leere Tabelle mittels Formular aufgefüllt werden, so können Sie ein selbst
definiertes Formular als Vorlage benutzen. Dazu geben Sie unter dem Menü Extras und
dem Befehl Optionen im Register Formulare/Berichte unter Formularvorlage den
Filenamen Ihres bereits für eine andere Tabelle erstellten Formulars ein. Dieser Name wird
dann während der Formularerstellung mit dem Assistenten anwählbar sein.
5.2 Berichte erstellen
Ein Bericht ist eine Art Formular, aber ein nicht auf Tabellen anwendbares, sondern nur aus
Tabellen erstell- und ausdruckbares.
Über das Symbol für Neues Objekt und den Punkt Bericht kommen Sie in das Fenster
Neuer Bericht.
Dort kann man den Berichts-Assistenten aufrufen und sich von ihm wie von anderen ObjektAssistenten führen lassen (Abfrageassistent, Formularassistent, Tabellenassistent etc.) oder
gleich einen Berichtstyp (Einspaltig oder Tabellarisch) auswählen. Empfohlen wird aber fürs
erste die Verwendung des Berichtsassistenten, der die Auswahl von in den Bericht
eingehenden Variable (=Felder, Spalten) ermöglicht. Fortgeschrittene können dies natürlich
über die Entwurfsansicht des Berichts tun.
© Peter Teibenbacher
Herunterladen