close

Anmelden

Neues Passwort anfordern?

Anmeldung mit OpenID

1. Was ist eine Datenbank? - RobertKrah.de

EinbettenHerunterladen
Access 2000
Robert Krah
Inhaltsverzeichnis
1
Merkmale einer Datenbank ........................................................................................... 1
1.1
Verwendung von Datenbanken........................................................................................ 2
2
Arbeiten mit Tabellen .................................................................................................... 2
2.1
Anlegen einer Datenbank ................................................................................................ 3
2.2
Symbolleiste..................................................................................................................... 4
2.3
Tabellen erstellen............................................................................................................. 4
2.4 Feldeigenschaften ................................................................................................................ 5
2.4
Primärschlüssel setzen .................................................................................................... 6
2.5
Datensätze einfügen ........................................................................................................ 7
2.6
Daten suchen................................................................................................................... 7
2.7
Felder hinzufügen ............................................................................................................ 7
2.8
Feldanordnung ändern..................................................................................................... 8
2.9
Tabelle drucken und Seitenansicht.................................................................................. 8
2.10
Datensätze sortieren .................................................................................................... 8
2.11
Daten filtern .................................................................................................................. 9
2.12
Tabellen importieren................................................................................................... 12
3
Beziehungen zwischen Tabellen ................................................................................ 13
3.1
3.2
3.3
Tabellen-Beziehungen und der Primärschlüssel ........................................................... 14
Beziehungen zwischen Tabellen definieren................................................................... 14
Der Nachschlageassistent ............................................................................................. 17
4
Abfragen ....................................................................................................................... 21
4.1
4.2
4.3
4.4
4.5
4.6
4.7
Typen von Abfragen....................................................................................................... 21
Abfrage-Assistenten....................................................................................................... 22
Auswahlabfragen ........................................................................................................... 22
Festlegung von Kriterien / Ausdrücke ............................................................................ 24
Und- /Oder-Verbindungen von Ausdrücken................................................................... 25
Berechnungen und Funktionen in Auswahlabfragen ..................................................... 26
Suchen in einer medizinischen Datenbank.................................................................... 27
Access 2000
Robert Krah
1 Merkmale einer Datenbank
Eine Datenbank ist eine geordnete Sammlung von Informationen, die zueinander in einer festgelegten Beziehung stehen. Datenbanken begegnen uns auch im täglichen Leben, z. B. als
Telefonbücher, Lexika oder Wörterbücher. Die Gemeinsamkeit solcher Datensammlungen besteht in der Ordnung der Daten, im Unterschied z. B. zu Texten. Die Sortierung sorgt bei Datenbanken für das schnelle Auffinden von Suchbegriffen, z. B. beim Telefonbuch - dabei ist es
prinzipiell gleichgültig, ob es sich um eine elektronische Datenbank im Computer oder um eine
Kartei, ein Telefonbuch usw. handelt. Je größer die Menge der aufzunehmenden Daten allerdings wird, um so eher bietet sich eine Verarbeitung per Computer an.
Für eine Datenverwaltungssystem wie Access werden Daten in Tabellenform erstellt, z. B. folgendermaßen:
Name
Kießler
Lage
Ullmer
Kante
Vorname
Manfred
Christa
Paul
Anna
Ort
Düsseldorf
Mettmann
Düsseldorf
Köln
Eintrittsdatum
09.08.2001
07.01.1998
01.06.2002
20.12.1999
Beitrag
22,50 €
11,90 €
40,00 €
28,00 €
Jede Spalte in diesem Beispiel hat eine Überschrift, den Feldnamen. In jeder Spalte werden
gleichartige Daten wie Name, Ort usw. aufgenommen. Sie finden hier also a) eine Gemeinsamkeit in den Spalten, und außerdem gehören b) die Daten einer Zeile zusammen, indem sie Angaben zu einer Person dokumentieren. Der Fachbegriff dazu ist Datensatz.
Eine Spalte der Liste, worin eine je gleichartige Eintragung zu finden ist, ist ein Datenfeld, an
unserem Beispiel also das Feld Name, Ort usw. Jedes Datenfeld muss einen Feldnamen haben.
Ein Vorteil an Datenbankprogrammen wie Access ist, dass man mehrere Tabellen zu einer Datenbank zusammenfassen kann. Ein Beispiel aus der Lagerhaltung eines Betriebes soll das
zeigen: Alle Artikel sind in einer Tabelle zusammengefasst. Die gespeicherten Informationen
umfassen beispielsweise die Artikelnummer, die Bezeichnung, die vorrätige Menge, den Mindestbestand, den Lieferanten usw. Eine andere Tabelle enthält alle Lieferantenangaben, eine
weitere die offenen Bestellungen. Die letztgenannte Tabelle enthält wieder eine Angabe zum
Lieferanten, die Lieferantennummer, sowie als Verbindung zur Artikeltabelle die Artikelnummer
des bestellten Artikels. - Geht nun eine Lieferung ein, muss die Menge in der Artikeltabelle aktualisiert werden und die Bestellung aus der Tabelle der offenen Bestellungen gelöscht werden.
Eventuell ist auch ein Eintrag in der Lieferantentabelle zu machen, weil nun die Rechnung des
Lieferanten zu erwarten ist.
Artikel
Lieferant
Bestellungen
Art.-Nummer
Lieferanten-Nummer
Bestelldatum
Art.-Bezeichnung
Firma
Bestellmenge
Menge
Straße
...
Mindestbestand
PLZ
Art.-Nummer
Lagerort
Ort
....
....
Telefon
Lieferanten-Nummer
Lieferanten-Nummer
....
.....
Die Verbindung der drei Tabellen erfolgt über die Datenbank; durch sie wird bestimmt, welche
Felder der einen Tabelle mit welchen Feldern anderer Tabellen in Bezug gesetzt werden sollen.
Die bisher erklärten Begriffe im Überblick:
Access 2000
TAW
Datenbank:
Zusammenstellung von Daten zu einem Themenbereich, z. B. alle Kunden-, Lieferanten- und Artikeldaten einer Firma. Eine Datenbank besteht aus mehreren Tabellen, die miteinander in Verbindung stehen.
Tabelle:
Eine strukturierte Liste von Daten, bestehend aus Spalten und Zeilen.
Datensatz:
Eine Zeile in der Tabelle, z. B. eine Adresse oder alle Angaben zu einem Artikel.
Datenfeldinhalt
Ein Eintrag in einer Zelle, z. B. ein Name, ein Ort usw.
Feldname:
Die Spaltenüberschrift, mit der gleichartige Einträge in den Feldern bezeichnet werden.
Wenn Sie diese Begriffe auf eine Beispieltabelle anwenden, erhalten Sie als Resultat:
Feldnamen
Datensatz
Art.-Nr.
67453
53298
34976
29006
Art.-Bezeichnung
Monitor 17 Zoll
Disketten 3,5 Zoll
Tastatur MFII
MS-Maus
Menge
240
180
380
400
MindestBestand
30
150
70
100
Lieferanten
Nummer
23866
23855
23866
89055
Datenfeldinhalte
1.1 Verwendung von Datenbanken
Man verwendet Datenbanken zum Erfassen, Suchen, Filtern, Sortieren und Selektieren von
Daten. Beispiele dazu:
•
erfasse alle Umsätze einer Firma, ordne sie einzelnen Mitarbeitern zu, aktualisiere gleichzeitig den Lagerbestand und die offenen Rechnungen;
•
suche aus einer Adressendatei alle männlichen Personen, die in Neuss wohnen und seit
1988 registriert sind;
•
selektiere alle Artikel mit einem Einkaufspreis ab 10 €, die seit drei Monaten auf Lager sind;
•
berechne allen Kunden, die seit zwei Monaten ihre Rechnung nicht bezahlt haben, 3 % Verzugszinsen.
2 Arbeiten mit Tabellen
Access nimmt Daten zunächst in Tabellen auf. Eine Tabelle gleicht einer Liste, die untereinander die Datensätze enthält. Tabellen sind Bestandteil von Datenbanken. Um eine Tabelle einzurichten, die Teil einer neuen Datenbank werden soll, muss deshalb zuerst eine neue Datenbank
angelegt werden. Access kann nur eine Datenbank gleichzeitig öffnen. Dies ist aber völlig ausreichend, weil eine Datenbank aus einer Vielzahl von Tabellen, Ansichten, Formularen, Berichten und Makros bestehen kann. Außerdem ist es möglich, in einer Access-Tabelle Bezüge auf
nicht geöffnete Datenbanken herzustellen.
-2-
Access 2000
TAW
2.1 Anlegen einer Datenbank
Beim Start von Access erfolgt zunächst die Nachfrage an den Benutzer, ob eine neue oder eine
vorhandene Datenbank gewünscht wird:
Im Unterschied zu anderen Microsoft OfficeProgrammen wie Word oder Excel haben Sie
nicht zu Beginn eine leere Seite oder ein Tabellenblatt vorliegen, sondern müssen erst eine Datenbanktabelle definieren.
Aufgabe: Wählen Sie die Option Leere Access-Datenbank:
Sie werden in einem Dialogfeld aufgefordert, einen Dateinamen anzugeben.
Geben Sie den Dateinamen Krankenhaus ein.
Der zunächst markiert sichtbare Name db1.mdb wird dabei automatisch überschrieben:
Bildschirmaufbau /Dialogfeld zu:
Neue Datenbank anlegen
Im nächsten Schritt gelangen Sie in
das Datenbankfenster.
Von hier aus haben Sie Zugriff auf
die Tabellen, Abfragen, Formulare
usw. einer Datenbank:
-3-
Access 2000
TAW
2.2 Symbolleiste
Die Symbole der Symbolleiste sind jetzt deutlicher sichtbar; vorher waren
sie noch grau/blass, weil sie - ohne geöffnete Datenbank - noch keine
Funktion hatten. Vom Datenbankfenster aus können sie verwendet werden. Durch Anklicken mit der Maus können Sie über die Symbole der
Symbolleisten die wichtigsten Befehle abrufen. Wenn Sie den Mauspfeil
auf ein Symbol stellen (ohne zu klicken) erscheint nach einem Moment
die Erklärung für das Symbol, z. B. so:
Je nachdem, ob Sie auf dem Bildschirm das Datenbankfenster, eine geöffnete Tabelle, eine
Abfrage usw. stehen haben, werden die Symbolleisten von Access automatisch geöffnet.
2.3 Tabellen erstellen
Access bietet jetzt verschiedene Varianten
des Erstellens einer Tabelle an.
Aufgabe: Wählen Sie die erste Möglichkeit
zum Erstellen einer Tabelle in
der Entwurfsansicht.
Der Bildschirm zeigt jetzt die Entwurfsansicht der neuen Tabelle. Hier sind Sie aufgefordert, die
Felder zu definieren.
Aufgabe: Geben Sie hier die folgenden Feldnamen
und Felddatentypen ein. Mit der [ Tab ] Taste gelangen Sie von einer Spalte und
einer Zeile der Tabellendefinition zur nächsten. Der Felddatentyp Text ist die Standardvorgabe; mit dem kleinen Listenpfeil
kann er geändert werden, wenn Sie in der
Spalte Felddatentyp stehen und den Pfeil
mit der Maus anklicken.
Aufgabe: Markieren Sie die Zeile PatientenNr und klicken Sie auf das
Symbol für den Primärschlüssel (Erläuterungen dazu s. u.)
Die Zeile erscheint dann so:
Klicken Sie anschließend auf das Symbol oben links zur Tabellenansicht:
Access zeigt die Meldung, dass die Tabelle erst gespeichert werden müsste.
Geben Sie ihr den Namen Patienten.
Erst jetzt, nachdem die Felder definiert wurden und die Tabelle gespeichert ist, bietet Access
die noch leere Tabelle zur Eingabe an:
-4-
Access 2000
TAW
2.4 Feldeigenschaften
Die wichtigsten Feldeigenschaften sind der Feldname und der Felddatentyp. Der Feldname
dient zur Identifizierung der einzelnen Felder und wird als Spaltenüberschrift im Datenblatt verwendet. Wenn mehrere Tabellen verbunden werden, ist es wichtig, je einen identischen Feldnamen zu verwenden, über den die Beziehung von einer Tabelle auf die andere erfolgt.
Bei den Felddatentypen haben Sie folgende Wahlmöglichkeiten:
•
Text
Der Feldtyp Text ist die Vorgabe bei der Festlegung der Feldeigenschaften. Man verwendet ihn zur Aufnahme von Wörtern, für
Kombinationen aus Buchstaben und Zahlen (z. B. Straße und
Hausnummer) oder für Zahlen, mit denen Sie keine Berechnungen
vornehmen , z. B. Telefonnummern oder Postleitzahlen.
•
Memo
Hier können unstrukturierte Texte bis zu einer Länge von 32000
Zeichen eingeben werden, z. B. für Kommentare, Notizen und
Anmerkungen, die in den Textfeldern nicht untergebracht werden
können.
•
Zahl
für Werte, die für Berechnungen herangezogen werden sollen.
•
Datum/Zeit
für Datums- und Zeitangaben
•
Währung
findet Verwendung bei der Aufnahme von Beträgen im Währungsformat, z. B. in €. Hier erfolgt automatisch die Formatierung mit 2
Dezimalstellen und der Währungsbezeichnung, z. B. 135,80 €.
•
Auto-Wert
um Datensätze mit einer laufenden Nummerierung zu versehen.
Die Zahl in diesem Feld wird automatisch jeweils um 1 erhöht,
wenn ein neuer Datensatz hinzugefügt wird.
•
Ja/Nein
Ein logisches Feld, das nur den Eintrag Ja oder Nein bekommen
kann. Es wird verwendet für Einträge, die mit einem eindeutigen
Wahrheitswert versehen werden können, z. B. Rechnung bezahlt/nicht bezahlt oder Ausschussmitglied Ja/Nein.
•
OLE-Objekt
Dies sind Objekte aus anderen Windows-Programmen, z. B. eine
Excel-Tabelle oder eine Paint-Grafik.
•
Hyperlink
Zur Aufnahme von Hyperlink-Adressen in Tabellen
•
Nachschlage- Dieser Feldtyp wird später im Zusammenhang mit Listen- und
AssistentKombinationsfeldern in Formularen verwendet und erläutert.
Weitere Feldeigenschaften:
In der Entwurfsansicht der Tabelle, in der
Sie den Feldnamen und -typ festlegen,
zeigt Ihnen Access im unteren Drittel
des Fensters noch weitere Eigenschaften
an:
Die Feldgröße ist bei Textfeldern standardmäßig 50 Zeichen (möglich bis 255) und bei Zahlenfeldern Double. Integer-Zahlen sind Ganzzahlen (ohne Dezimalstellen). Es ist sinnvoll, keine
-5-
Access 2000
TAW
überflüssig große Feldlänge zu verwenden, um Speicherplatz und Bearbeitungszeit für Access
zu sparen.
Das Format spielt vor allem bei Zahlenfeldern eine Rolle. Die zweite Zeile Format bezieht sich
auf das Anzeigeformat, das Eingabeformat bezieht sich darauf, in welcher Art Daten eingegeben werden. Wichtig ist das Währungsformat (mit Tausender-Trennzeichen und 2 Dezimalstellen, negative Zahlen in rot) das Prozentformat (0,25 wird z. B. als 25 % angezeigt).
Die Eigenschaft Beschriftung ist für Formulare wichtig: Wenn hier nichts eingegeben wird,
verwendet Access den Feldnamen als Beschriftung. Eine andere Beschriftung in Formularen
könnten Sie brauchen, wenn als Feldname selbst ein kurzer Eintrag gewählt wird und in Formularen eine ausführlichere Beschriftung sinnvoll ist.
Der Standardwert ist das, was in neuen Datensätzen automatisch erscheint, bevor ein Eintrag
erfolgt ist. Bei Zahlenfeldern ist dies 0, bei Textfeldern ein leeres Feld. Wenn Sie hier einen Eintrag machen, können Sie bei der Eingabe von Daten Zeit sparen, wenn öfter derselbe Eintrag
erfolgt und nur in besonderen Fällen in dieses Feld etwas anderes eingetragen wird.
Mit der Gültigkeitsregel und der Gültigkeitsmeldung können Sie Bedingungen für die Dateneingabe vergeben, z. B. um Fehler bei der Eingabe zu verringern oder um Eingaben auf Plausibilität zu überprüfen. Die Gültigkeitsmeldung ist die Fehlermeldung, die Access anzeigt, wenn
man bei der Eingabe gegen die Gültigkeitsregel verstoßen hat.
Bei Eingabe erforderlich können Sie die Standardeinstellung Nein auf Ja ändern, wenn vorgesehen ist, in diesem Feld zwingend eine Eingabe zu machen.
Bei Index ist die Standardeinstellung Nein. Ein Index ist sinnvoll, wenn Sie die Daten nach diesem Feld sortieren wollen oder häufiger Suchvorgänge vornehmen. Es gibt für die Einstellung
Index=Ja zwei Möglichkeiten: Ohne Duplikate bedeutet, dass keine doppelten Einträge vorliegen dürfen. Duplikate möglich müssten Sie verwenden, wenn beispielsweise das Feld Name
indiziert wird, sonst dürften nicht zweimal dieselben Nachnamen in einer Liste auftauchen.
2.4 Primärschlüssel setzen
Das Schlüsselsymbol in der Symbolleiste steht für den sogenannten Primärschlüssel, nach
dem vorrangig sortiert wird. Wenn verschiedene Tabellen miteinander verbunden werden, wird
der Primärschlüssel in jedem Fall benötigt. Die einzelnen Datensätze müssen durch den Primärschlüssel eindeutig identifiziert werden können; deshalb empfiehlt es sich nicht, beispielsweise das Feld Name als Primärschlüssel zu verwenden. Wenn Sie die Tabelle speichern, ohne einen Primärschlüssel gesetzt zu haben, erfolgt eine Abfrage, ob Sie einen Primärschlüssel
setzten möchten. Wird diese Frage mit Ja beantwortet, dann setzt Access einen Zähler hinzu,
der die Datensätze durchnumeriert und damit den Primärschlüssel bildet.
Aufgabe: Geben Sie die folgenden Daten in die Tabelle ein:
-6-
Access 2000
TAW
2.5 Datensätze einfügen
Wenn Sie neue Daten im Datenblatt eingeben wollen, ist dies in der leeren, letzten Zeile des
Datenblattes möglich. Bei wenigen, übersichtlichen Daten ist dies der einfachste Weg. Bei größeren Datenbeständen verwenden Sie den Befehl:
Einfügen Neuer Datensatz
Aufgabe: Fügen Sie - unter Verwendung des Befehl oben -zwei beliebige neue Datensätze
zur Tabelle hinzu. Wechseln Sie dann wieder zur Ansicht aller Datensätze!
2.6 Daten suchen
Zum Suchen von bestimmten Daten können Sie das Fernglas-Symbol in der Symbolleiste, oder
den Befehl
Bearbeiten Suchen
verwenden.
Sie gelangen in folgendes Dialogfeld:
Das Dialogfeld Suchen zeigt in der Titelzeile das Feld an, das vorher markiert war; dies ist wichtig in Verbindung mit der Option Suchen in. Dort sehen Sie die Wahlmöglichkeit
(also das aktuelle Feld) oder
Wenn Patientennummer markiert ist, sucht das Programm nur in der jeweiligen Spalte der Tabelle, also z. B. nur nach Namen, nach Orten usw. Wenn die Suche davon unabhängig sein
soll, muss Tabelle angeklickt werden.
Um die Suchmöglichkeiten zu erweitern, können Sie auch auf die Schaltfläche Erweitern klicken; dann bietet das Programm noch weitere Möglichkeiten.
Das Kontrollhäkchen bei Groß-/Kleinschreibung beachten ist in der Voreinstellung deaktiviert;
deshalb kann der Suchbegriff einfach in Kleinbuchstaben eingegeben werden.
Mit der Schaltfläche Suchen weist man Access an, mit dem Suchlauf zu beginnen. Hier muss
darauf geachtet werden, dass unter Umständen das Dialogfeld zum Suchen auf dem Bildschirm
die Stelle der Tabelle verdeckt, an der sich der Begriff befindet. Mit Schließen wird der Suchvorgang beendet, und die Markierung steht auf dem gefundenen Begriff.
2.7 Felder hinzufügen
Wenn neue Felder, also Spalten in der Tabelle, ergänzt werden sollen, dann ist dies im Datenblatt (der Tabellenansicht) über den Befehl Einfügen Spalte möglich. Die neue Spalte bekommt dann die Bezeichnung Feld1. Um sie zu benennen, muss man wieder zur Entwurfsansicht wechseln, wo die Feldeigenschaften bestimmt wurden. Dazu dient das erste Symbol (von
links) in der Symbolleiste.
Aufgabe: Wechseln Sie zur Entwurfsansicht. Markieren Sie dort das Feld Straße. Wählen Sie
dann den Befehl
Einfügen Zeilen
oder Symbol:
Fügen Sie ein Feld Geschlecht mit der Länge 1 hinzu. Wechseln Sie anschließend wieder zur
Tabellenansicht und ergänzen m (männlich) oder w (weiblich).
-7-
Access 2000
TAW
2.8 Feldanordnung ändern
Die Reihenfolge der Felder kann in der Entwurfs- oder der Tabellenansicht verändert werden.
Aufgabe: Verschieben Sie das Feld Patientennummer ganz nach oben vor das Feld Name!
Gehen Sie dazu so vor:
1.
Die Spaltenüberschrift markieren
2.
Spalte mit gedrückter Maustaste verschieben.
2.9 Tabelle drucken und Seitenansicht
Um Daten auszudrucken, können eigene Berichte erstellt werden, mit denen man die Möglichkeiten der Feldanordnung wie spaltenweise, Etikettendruck usw. besonders gut steuern kann
(s. dazu das Kapitel Berichte). Es ist aber ebenfalls möglich, Tabellen in der Form zu drucken,
wie sie auf dem Datenblatt in der Tabellenansicht erscheinen.
Wählen Sie den Befehl:
Datei Drucken
um in das folgende Dialogfeld zu gelangen:
Dort können Sie festlegen, entweder alles, markierte
Datensätze oder bestimmte Seiten der Tabelle zu
drucken. Wenn nur Markiertes gedruckt werden soll,
muss vorher in der Tabelle eine Markierung erfolgt
sein. Außerdem kann die Druckqualität oder die Anzahl Exemplare verändert werden.
Vor dem Ausdruck empfiehlt es sich, zunächst die Seitenansicht zu aktivieren. Sie
gelangen vom Datenblatt aus über das Seitenansichts-Symbol oder über den Befehl
Datei Seitenansicht
zu folgendem Bildschirmaufbau:
Sie sehen die Tabelle stark verkleinert, so
wie es dem Ausdruck auf einem DIN A 4-Blatt
entsprechen würde.
Mit der Schaltfläche Zoom
oder über das Lupensymbol (wenn Sie die Maus in die Tabelle bewegen) machen Sie die Daten
wieder lesbar, können aber in der Seitenansicht keine Änderungen an den Daten vornehmen.
Mit dem Befehl Datei Drucken, dann über die Schaltflächen Einrichten und Eigenschaften,
gelangen Sie zu Dialogfeldern, von wo aus Sie die Ausrichtung (Hoch- oder Querformat), den
Drucker, die Papiergröße und die Seitenränder verändern können:
2.10 Datensätze sortieren
Um eine Tabelle zu sortieren, benötigen Sie nur eines der Sortier-Symbole für auf- oder absteigende Sortierung:
Aufsteigend sortieren
Absteigend sortieren
-8-
Access 2000
TAW
Voraussetzung ist, dass vorher eine beliebige Zelle des Feldes angeklickt wurde, nach dem Sie
sortieren wollen.
Wenn Sie nach zwei Sortierkriterien sortieren wollen, z. B. vorrangig nach Name und außerdem, bei Namensgleichheit, nach Vorname, dann müssen vorher beide Felder über die Spaltenköpfe markiert worden sein. Wenn danach eins der Sortier-Symbole angeklickt wird, erhalten Sie die gewünschte Sortierung.
2.11 Daten filtern
Mit dem Begriff Filtern ist gemeint, Bedingungen für die Ansicht der Daten zu vergeben, also
z. B. aus einer Vielzahl von Adressen nur bestimmte Adressen, etwa aus einem Ort, anzusehen. Das Filtern während der Arbeit im Datenblatt (also der Tabelle) ist temporär und bleibt nur
bestehen, solange die Tabelle geöffnet ist. Wenn Sie einen Filtervorgang speichern wollen, um
öfter darauf zurückzugreifen, kann entweder der Filter als Abfrage gespeichert werden, oder
man wählt direkt den Weg über eine Abfrage (s. unten). Wenn Sie eine Abfrage-Datei erstellen,
können Sie auch mehrere Tabellen einbeziehen.
Diese Symbole der Tabellen-Symbolleiste stehen für das Filtern von Daten zur Verfügung:
Auswahlbasierter Filter
Formularbasierter Filter
Filter anwenden
Mit dem Ausdruck auswahlbasiert ist gemeint, dass eine Filterung aufgrund einer vorherigen
Markierung erfolgt. Wenn Sie z. B. in der Spalte Ort den Ortsnamen Düsseldorf markieren
und auf das Filtersymbol klicken, werden nur noch die Datensätze von Personen angezeigt, die
in Düsseldorf wohnen.
Ein formularbasierter Filter ermöglicht ein Filtern nach mehr Kriterien als der auswahlbasierte
Filter. Er zeigt die leere Tabelle an (oder ein Formular - s. u.) - wenn er von einen Formular aus
angerufen wird).
Mit einem Dreieckspfeil nach unten kann man das Filtern anhand
der vorgegebenen Möglichkeiten erreichen:
Um das Filterergebnis zu erhalten, muss jeweils auf das Symbol
Filter anwenden geklickt werden.
Wenn verschiedene Filterkriterien verbunden werden sollen, gilt:
nebeneinander = und (Zeige die Patienten an, deren Patientennummer größer 200 ist und die
in Düsseldorf wohnen
Wenn mit oder verbundene Kriterien gewünscht werden, klicken Sie im Dialogfeld unten links an:
Dort werden dann jeweils die Kriterien eingegeben.
Eine weitere Möglichkeit des Filterns bietet der Spezialfilter. Verwenden Sie dazu den Befehl:
Datensätze Filter Spezialfilter/-sortierung
-9-
Access 2000
TAW
In diesem Abfrage-Entwurfsfenster können Sie
die Feldnamen durch einen Doppelklick in den
Entwurfsbereich unten bringen.
Die Kriterien für die Auswahl werden in der
Zeile Kriterien eingetragen:
(Die Anführungszeichen setzt Access selbst
hinzu.)
Klicken Sie zum Abschluss auf die Schaltfläche Filter/Sortierung anwenden, und die gefilterten Daten erscheinen auf dem Monitor.
Es ist auch möglich, verschiedene Kriterien
miteinander zu kombinieren. So würde z. B.
die folgende Filterung die Daten der Personen
anzeigen, die entweder in Düsseldorf oder
Kölnwohnen und deren PatientenNr kleiner als
200 ist:
Wiederholungsaufgaben
Lösen Sie die folgenden Aufgaben mit Access:
1. Legen Sie eine neue Tabelle mit folgenden Feldern an:
Feldname
Feldtyp
Name der Tabelle: Beruf
Name
Vorname
Beruf
Gehalt
2.
Text
Text
Text
Zahl
zunächst ohne Primärschlüssel!
Nehmen Sie folgende Datensätze auf:
Name
Vorname
Beruf
Müller
Dorte
Müller
Wolandt
Ansbach
Wilfried
Anna
Adam
Doris
Hans
Pförtner
Sekretärin
Ingenieur
Buchhalterin
Betriebswirt
Gehalt
1950,78
2360,00
3200,65
2750,89
3580,00
3. Sortieren Sie nun nach Name und Vorname: In der Tabelle muss Müller, Adam vor Müller, Wilfried erscheinen.
- 10 -
Access 2000
4.
TAW
Feldname
Verändern Sie die Dateistruktur so:
Feldtyp
Personalnummer
Name
Vorname
Straße
Ort
Beruf
Gehalt
5.
Ergänzen Sie nun folgende Daten in den neuen Feldern:
Personalnummer
Name
Straße
Ort
1133
1124
1230
1368
1546
Köln
Düsseldorf
Köln
Düsseldorf
Wuppertal
Ansbach
Dorte
Müller
Müller
Wolandt
Bergweg 3
Talstraße 45
Marktstraße 2
Bilker Allee
Neuenteich 45
6.
Setzen Sie den Primärschlüssel auf das Feld Personalnummer
7.
Nehmen Sie die folgende Seitenrandeinstellung vor:
oben: 5 cm
unten: 4 cm rechts: 3,5 cm
Zahl
Text
Text
Text
Text
Text
Zahl
links: 3,5 cm
8.
Sortieren Sie nach Gehalt.
9.
Sehen Sie sich die Tabelle in der Seitenansicht an.
10.
Filtern Sie alle Kölner heraus.
11.
Verändern Sie den Filter so, dass alle Personen gefiltert werden, die in Köln wohnen
und mehr als 2700 € verdienen.
12.
Verändern Sie die Feldanordnung in der Entwurfsansicht so, dass Beruf und Gehalt
unter Vorname stehen!
Übungsaufgabe 2
Richten Sie eine neue Datenbank (nicht Tabelle!) namens Versicherung ein. Erstellen Sie
eine neue Tabelle namens Krankenkasse mit den folgenden Daten. Der Primärschlüssel soll
auf das Feld V_Nr gesetzt werden.
Bearbeiten Sie dazu die folgenden Aufgaben:
1.
Sortieren Sie die Tabelle alphabetisch nach dem Feld Versicherung.
2.
Filtern Sie die Krankenkassen nach folgenden Kriterien:
a) alle Kassen mit einem Beitragssatz über 14,5 %.
b) die Kassen, die OnlineVersicherung sind und unter 14 % Beitragssatz haben.
- 11 -
Access 2000
TAW
2.12 Tabellen importieren
Um den Aufbau und die Vorgehensweise zu erläutern, wie Tabellen über ein Feld verbunden
werden, bietet sich hier das Importieren einer Tabelle an. Bisher haben Sie in der Datenbank
Versicherung Daten zu verschiedenen Krankenkassen und in der Datenbank Krankenhaus
eine Tabelle mit Patientendaten erfasst. Die Patiententabelle soll jetzt in die Datenbank Versicherung importiert werden, damit beide Tabellen gemeinsamer Bestandteil einer Datenbank
sind. Gehen Sie dazu so vor:
1. Geben Sie (in der geöffneten Datenbank Versicherung) den Befehl:
Datei Externe Daten Importieren
2. Wählen Sie im Dialogfeld mit
einem Doppelklick die Datenbank aus, aus der Sie importieren wollen
(Krankenhaus.mdb).
3. Jetzt wird die Tabelle aus der
Datenbank ausgewählt:
Bestätigen Sie dann mit OK.
Damit eine Verbindung zwischen beiden Tabellen hergestellt werden kann, benötigen beide ein
gemeinsames Feld. Hier bietet sich das Feld V_Nr aus der Tabelle Krankenkasse an.
Aufgabe: Vergewissern Sie sich in der Entwurfsansicht davon, dass der Feldtyp des Feldes
Typnummer als Feldtyp Zahl / Long Integer hat! Dies ist wichtig, um später die Beziehung zwischen beiden Tabellen festzulegen.
Aufgabe: Öffnen Sie jetzt die Tabelle Patienten in der Entwurfsansicht. Definieren Sie ein
zusätzliches Feld mit dem Namen V_Nr, Feldtyp Zahl / Integer.
Erfassen Sie dann die folgenden
Versicherungsnummern:
- 12 -
Access 2000
TAW
Sie sehen, dass einige Versicherungsnummern mehrfach vorkommen und eine gar nicht, wie
es der Praxis entsprechen könnte: Mehrere Patienten haben die selbe Krankenkasse, und nicht
alle registrierten Versicherungen werden von den Patienten einer Einrichtung benannt.
Um zu erreichen, dass die Daten aus beiden Tabellen gemeinsam genutzt werden können, ist
es erforderlich, Beziehungen zwischen den Tabellen herzustellen. Dies soll im nächsten Kapitel beschrieben werden.
3 Beziehungen zwischen Tabellen
Wenn Daten verschiedener Tabellen miteinander verknüpft werden sollen oder um Daten von
mehr als einer Tabelle in einer Abfrage oder einem Formular zusammenzufassen, müssen Beziehungen zwischen Tabellen definiert werden. Ein Beispiel wäre die Zuordnung eines Lieferanten aus einer Tabelle zu mehreren Artikeln, die in einer anderen Tabelle erfasst wurden,
oder die Zuordnung von Bestellungen zu Angestellten, die die Bestellung vom Kunden aufgenommen haben.
Grundsätzlich können drei Arten von Beziehungen möglich sein:
1:1 -Beziehung:
Jedem Datensatz der Tabelle A entspricht genau ein Datensatz der Tabelle B
Die 1:1 - Beziehung finden Sie dann vor, wenn eine Tabelle Detailinformationen zu dem enthält,
was in der Haupttabelle zu finden ist. Ein Beispiel dafür wäre eine Bibliotheksverwaltung: Eine
Tabelle enthält alle Bücher, in einer weiteren sind Informationen zu allen Ausleihvorgängen gespeichert. Zu einem Zeitpunkt kann ein Buch nur genau einem Ausleiher zugeordnet sein.
Theoretisch könnten dabei beide Tabellen zu einer verschmolzen werden: In der Tabelle, die
die Bücher umfasst, könnte auch stehen, welcher Benutzer es eventuell gerade ausgeliehen
hat. Praktisch ist es oft übersichtlicher, wenn zwei oder mehrere Tabellen erstellt werden.
1:n -Beziehung:
Einem Datensatz der Tabelle A sind mehrere Datensätze der Tabelle B
zugeordnet
Die Beziehung vom Typ 1:n ist diejenige, die am häufigsten vorkommt. Beispiele dafür sind:
•
1 Lieferant liefert n Artikel
•
1 Angestellter bearbeitet n Bestellungen
m:n-Beziehung:
Ein Datensatz der einen Tabelle hat mehrere auf ihn bezogene Datensätze der anderen Tabelle. Umgekehrt gilt dieselbe Beziehung.
Ein Beispiel dazu: Angenommen, Sie haben eine Tabelle mit Artikeln, eine andere mit Bestellungen. Eine Bestellung kann aus mehreren Artikeln bestehen, und umgekehrt kann ein Artikel
in verschiedenen Bestellungen vorkommen.
Diese Art Beziehung ist aber problematisch und in der Konsequenz nicht praktikabel, wenn man
überlegt, welche Informationen sich in den Feldern wiederfinden müssten: Im Feld Bestellung
der Artikeltabelle müsste bei jedem Artikel mehrere Eintragungen gemacht werden (was der
Definition eines Datenfeldes nach nicht geht!) oder die Informationen zu jedem Artikel müssten
komplett mehrfach vorkommen, wenn ein Artikel mehrfach bestellt worden ist.
Dasselbe würde für die Tabelle mit den Bestellungen gelten: In dem Datenfeld, in dem die Artikelnummer des bestellten Artikels zu finden ist, müsste mehr als eine Artikelnummer stehen
(geht nicht!), oder alle Informationen würden vielfach erfasst werden müssen. Hier würden dann
die Angaben zur Bestellung (welche Firma, welcher Bearbeiter, das Lieferdatum usw. so oft
aufgenommen werden müssen, wie Artikel bestellt worden sind.
- 13 -
Access 2000
TAW
Die Lösung aus diesem Dilemma ist folgende: Man benötigt in einem solchen Fall drei statt
zwei Tabellen. Wie bisher die Tabellen Artikel und Bestellung, und eine weitere mit den Bestelldetails.
Artikel
Artikelbezeichnung
Artikelnummer
Bestand
Einzelpreis
....
Bestellung
Bestellnummer
Firma
Bearbeiter
Lieferdatum
.......
1:n
1:n
Bestell-Details
Bestellnummer
Artikelnummer
Anzahl
Rabatt
In Access sind aus den genannten Gründen nur die beiden Arten von Beziehung möglich, die
1:1- Beziehung und die 1:n-Beziehung.
Die eindeutige Zuordnung, die Sie in einer 1:1-Beziehung vorfinden, ist eher dann gegeben,
wenn zwei Tabellen unterschiedliche Detailinformationen über jeweils einen Sachverhalt darstellen.
3.1 Tabellen-Beziehungen und der Primärschlüssel
Um Beziehungen zwischen Tabellen herstellen zu können, müssen Sie ein Feld einer Detailtabelle mit dem Schlüsselfeld der sogenannten Mastertabelle verknüpfen.
In der 1:1-Beziehung müssen die Primärschlüssel beider Tabellen dieselben Felder sein, in
der 1:n-Beziehung kann dies gar nicht möglich sein: Das Feld, das den Primärschlüssel enthält,
darf nicht zweimal denselben Eintrag haben. Im Beispiel oben zu einer 1:n-Beziehung, die Zuordnung einer Personaltabelle zu einer Bestelltabelle, sei z. B. das Schlüsselfeld der Personaltabelle die Personalnummer, die jeden Angestellten eindeutig identifiziert. Bei jeder Bestellung
findet sich als ein Feldeintrag auch die Personalnummer wieder, aber eben bei mehreren Bestellungen. Dies wäre nicht möglich, wenn die Personalnummer auch das Schlüsselfeld der
Bestelltabelle bilden würde.
3.2 Beziehungen zwischen Tabellen definieren
Am Beispiel der Tabellen Krankenkasse und Patienten ergibt sich der erforderliche Typ der
Beziehung zwischen den beiden Tabellen aus der Sachlage: Es muss sich um eine 1:nBeziehung handeln. Eine Versicherung hat n (beliebige Anzahl) Kunden.
Die 1:n-Beziehung zwischen den Tabellen Krankenkasse und Patienten soll zwischen dem
Feld V_Nr der Tabelle Auto und dem Feld V_Nr der Tabelle Patienten hergestellt werden. Das
heißt dann im Ergebnis, dass die Tabellen fest miteinander verknüpft sind; über die genannten
Felder werden die Datensätze verbunden. Das Feld V_Nr ist das Primärschlüsselfeld der Versicherungstabelle, in der Tabelle Patienten kann das Feld nicht der Primärschlüssel sein, sonst
könnte eine Versicherung nicht von zwei verschiedenen Patienten gewählt werden.
Um die Beziehung zwischen den Tabellen festzulegen, gehen Sie bitte nach der folgenden Anleitung vor.
Die Datenbank Versicherung muss offen sein, aber beide Tabellen aus der Datenbank müssen geschlossen sein.
- 14 -
Access 2000
TAW
Aufgabe: Öffnen Sie das Fenster Beziehungen mit diesem Symbol
oder mit dem Befehl
Extras Beziehungen
Im Dialogfeld Tabelle anzeigen wird bestimmt, welche
Tabellen in das Beziehungsfenster gebracht werden
sollen.
Weil nun Beziehungen zwischen beiden Tabellen hergestellt werden sollen, markieren Sie beide Tabellen.
Klicken Sie dann auf die Schaltfläche
und anschließend auf
Jetzt sind die beiden Tabellen mit ihren
Feldnamen im Fenster Beziehungen zu
sehen; die Primärschlüsselfelder erscheinen
fett:
Aufgabe: Ziehen Sie das Feld Typnummer
aus der Tabelle Auto in das Feld
Autotyp der Tabelle Kunden. Access zeigt folgendes Dialogfeld:
Aufgabe: Klicken Sie außerdem das Häkchen bei
an.
Referentielle Integrität soll sicherstellen, dass Beziehungen zwischen Datensätzen verknüpfter Tabellen gültig sind, und dass verknüpfte Daten nicht versehentlich gelöscht oder geändert
werden. Sie können referentielle Integrität durchsetzen, wenn alle folgenden Bedingungen erfüllt sind:
·
Das übereinstimmende Feld aus der Mastertabelle ist ein Primärschlüsselfeld oder hat
einen eindeutigen Index.
·
Die verknüpften Felder verfügen über denselben Datentyp.
·
Beide Tabellen gehören derselben Datenbank an.
- 15 -
Access 2000
TAW
Die referentielle Integrität sorgt dafür, dass jeweils die einzelnen Datensätze beider Tabellen
verbunden sind. Wenn versucht wird, aus der Mastertabelle (hier: Krankenkasse) einen Datensatz zu löschen, lässt das Programm dies nicht zu, solange noch Patienten dieser Krankenkasse angehören.
Wenn referentielle Integrität besteht, muss beim Hinzufügen von Datensätzen zunächst ein Datensatz in der vorrangigen Tabelle, der Mastertabelle Krankenkasse vorhanden sein, bevor ein
Datensatz in die Detailtabelle, hier: Patienten, aufgenommen werden kann. Auf das Beispiel
Versicherung bezogen heißt das: Sie können keinen Patienten erfassen, dem Sie die V_Nr einer Krankenversicherung zuordnen würden, die noch gar nicht erfasst ist.
Die Option Aktualisierungsweitergabe an Detaildatensatz bewirkt, dass Änderungen im
Schlüsselfeld der Mastertabelle automatisch an den entsprechenden Datensatz der Detailtabelle weitergegeben werden. Wenn Sie also beispielsweise eine V_Nr in der KrankenkassenTabelle ändern, dann wird diese Nummer automatisch bei allen Kunden, die diese Versicherung
haben, verändert.
Aufgabe: Klicken Sie abschließend im Fenster Beziehungen auf Erstellen.
Im Beziehungs-Dialogfeld sehen
Sie die Beziehung zwischen den
Tabellen so dargestellt:
Die liegende 8 steht für unendlich, dem entspricht die n-Seite der 1:n-Beziehung.
Aufgabe: Schließen Sie jetzt das Fenster. Access fragt nach, ob Sie Änderungen am Layout
speichern wollen; unabhängig von Ihrer Antwort sind die Beziehungen definiert, es
geht nur darum, ob die graphische Anordnung der Tabellen in diesem Fenster zu
speichern ist.
Die Wichtigkeit der richtigen Beziehung zwischen Tabellen soll noch einmal betont werden: Ein
relationales Datenbanksystem bietet die Möglichkeit der Verknüpfung von Tabellen. Gerade
wenn in Abfragen, Formularen und Berichten die Informationen aus verschiedenen Tabellen
zusammengefasst werden, kommt es zu Problemen, wenn die Beziehungen zwischen den Tabellen nicht eindeutig festgelegt sind. Durch die Festlegung der Beziehung kann beispielsweise
garantiert werden, dass es nicht möglich ist, einen Kunden zu löschen, der eine Rechnung noch
nicht bezahlt hat, oder umgekehrt kann sichergestellt werden, dass bei der Aufnahme einer
Bestellung erst die Stammdaten eines Kunden aufzunehmen sind.
Besonders wichtig ist diese Materie auch dann, wenn mehrere Benutzer Zugriff auf eine Datenbank haben. Hier muss sichergestellt werden, dass Informationen stets eindeutig und konsistent
sind.
Wenn Beziehungen zwischen den Tabellen
festgelegt wurden, ist es in der Tabellenansicht möglich, direkt zu sehen, welche Daten davon betroffen sind.
- 16 -
Access 2000
Durch einen Klick auf das
TAW
werden die dazugehörigen Daten der Detailtabelle angezeigt:
Die festgelegte Beziehung trägt nun auch dazu bei, die Daten in den Tabellen konsistent zu
halten; so ist es z. B. nicht möglich, in der abhängigen Tabelle einen Datensatz zu erfassen, für
den es keine Übereinstimmung im Schlüsselfeld mit der Mastertabelle gibt.
Aufgabe: Versuchen Sie, in der Tabelle Patienten einen Datensatz mit einer bisher nicht erfassten V_Nr aufzunehmen. Access gibt Ihnen hier den Hinweis, dass dies nicht
möglich ist:
Genauso wäre es, wenn Sie beispielsweise eine Bestellung bei einem Lieferanten aufgeben,
von dem gar keine Stammdaten erfasst worden sind.
Aufgabe: Öffnen Sie die Tabelle Krankenkasse und ändern Sie dort die V_Nr bei der Techniker Krankenkasse auf die Zahl 233 (vorher: 133). Öffnen Sie dann die Tabelle Patienten und kontrollieren Sie, ob die geänderte Nummer automatisch übertragen wird
(bei den Kunden Adamek, Hoppe, Heimann und Faber).
Aufgabe: Erstellen Sie eine neue Tabelle namens Vertreter. In dieser Tabelle sollen drei Versicherungsvertreter aufgenommen werden. Überlegen Sie selbst, welche Daten
sinnvoll sind. Stellen Sie dann eine Beziehung zur Tabelle Patienten her. Dazu
muss in beiden Tabellen ein Feld vorkommen, über das man die Beziehung herstellen kann.
3.3 Der Nachschlageassistent
Wenn Sie in einer Tabelle Daten eingeben und dabei Informationen aus einer anderen Tabelle
verwenden wollen, ist es sinnvoll, mit dem Nachschlageassistent zu arbeiten. Weil Redundanz
vermieden werden soll und Eindeutigkeit in der Zuordnung herrschen soll, sind bisher schon die
Verbindungen von einer Tabelle zur anderen über Nummernsysteme erfolgt (V_Nr von Krankenkasse zu V_Nr Patient). Das hat den Nachteil, dass man diese Nummern auswendig wissen
oder manuell in einer Liste nachsehen muss. Hier bietet sich der Nachschlageassistent an. Mit
Nachschlagefeldern erreicht man, dass man ein Listenfeld mit der Maus "aufklappen" kann und
aus diesem Listenfeld die Werte auswählt.
Am Beispiel der Verbindung Krankenkasse – Patienten soll gezeigt werden, wie man mit dem
Nachschlagefeld arbeitet.
- 17 -
Access 2000
TAW
Aufgabe: Wählen Sie die Entwurfsansicht der Tabelle Patienten. Dort wird das Feld V_Nr
markiert, weil hier aus der Liste der Felddatentypen der Typ Nachschlage-Assistent
ausgewählt wird:
In der Zeile V_Nr, dort in der zweiten Spalte
Felddatentyp auswählen:
hier den Nachschlageassistenten wählen:
Bei diesem Schritt des Assistenten
ist die markierte Option die richtige, denn der Wert (Typnummer)
soll der Tabelle mit den Autos entnommen werden.
Klicken Sie auf Weiter.
Die Tabelle Krankenkasse enthält
die Angaben, die nachgeschlagen
werden sollen, deshalb ist auch
hier die Auswahl klar:
Klicken Sie auf Weiter.
- 18 -
Access 2000
TAW
In diesem Schritt ist es wichtig,
dass beide Felder, V_Nr und Versicherung, gewählt werden. Die
Verbindung der Tabellen erfolgte
über die Nummer, aber das Feld
Versicherung, das in Worten die
Bezeichnung der Versicherung
enthält, soll hinterher in der Patiententabelle sichtbar sein und per
Mausklick gewählt werden können:
Klicken Sie dann auf Weiter.
In diesem Schritt sieht man Folgendes:
Schlüsselspalte ausblenden bedeutet,
dass die Versicherungsnummer, über die
tatsächlich eigentlich die Verbindung gezogen wird, hinterher gar nicht in der Tabelle sichtbar sein wird.
Sie können das Häkchen auch herausnehmen, wenn man beim Ausfüllen der
Tabelle zusätzlich die Information benötigt,
um welche Nummer es sich handelt.
Klicken Sie dann auf Weiter.
Dies ist der letzte Schritt des Assistenten.
Klicken Sie auf Fertigstellen.
Access fragt noch nach, ob die Tabelle gespeichert werden soll. Bestätigen Sie dies
mit Ja. Wechseln Sie dann zur Datenblattansicht der Tabelle:
In der Patiententabelle haben Sie anschließend die Möglichkeit, mit dem Listenfeld auszuwählen
dann kann man mit der
Wenn man hier mit der Maus aufklappt,
Maus wählen:
- 19 -
Access 2000
TAW
Aufgabe: Erstellen Sie eine neue Datenbank namens Firma.
Innerhalb der Datenbank soll zunächst die Tabelle Artikel mit den folgenden Datensätzen angelegt werden. Das Feld Artikelnummer soll als Schlüsselfeld festgelegt werden.
Aufgabe: Erstellen Sie innerhalb der Datenbank Firma eine neue Tabelle mit dem Namen
Lieferant. Die Lieferantennummer soll das Schlüsselfeld sein. Erfassen Sie darin
folgende drei Datensätze:
Aufgabe: Legen Sie eine 1:n-Beziehung zwischen der Tabelle Lieferant und der Tabelle Artikel fest. Das Feld, über das die Verbindung erfolgt, muss die Lieferantennummer
sein; achten Sie deshalb wieder auf identische Felddatentypen!
Aufgabe: Definieren Sie eine neue Tabelle namens Lager innerhalb der Datenbank Firma. In
der Tabelle sollen Details über die Lagerhaltung erfasst werden. Auch hier soll das
Feld Artikelnummer als Schlüsselfeld festgelegt werden.
Um die Einheit kg beim Feld Gewicht zu erhalten, während das Feld vom Typ Zahl ist,
muss ein benutzerdefiniertes Format definiert
werden:
- 20 -
Access 2000
TAW
Jeweils ein Datensatz der Tabelle Artikel hat genau einen Datensatz in der Tabelle Lager, der
ihm entspricht. Hier liegt also ein Beispiel für eine 1:1 - Entsprechung der jeweiligen Datensätze
vor.
Aufgabe: Definieren Sie jetzt eine 1:1 - Beziehung zwischen den Tabellen Artikel und Lager.
Das Beziehungsfenster soll insgesamt folgende Beziehungen zwischen den 3 Tabellen der Datenbank Firma:
Hinweis: Sie können die Tabellen
im Beziehungsfenster mit der Titelzeile (die den Tabellennamen
enthält) verschieben, um eine
günstige Anordnung zu erhalten.
4 Abfragen
Mit Hilfe von Abfragen stellen Sie Fragen an Ihren Datenbestand, der nach Kriterien analysiert
wird und ein Ergebnis, eine Auswahl von Daten, anzeigt oder auch Daten verändert. Eine einfache Abfrage funktioniert wie ein Filter. Eine Abfrage wird gespeichert, sie brauchen also häufig
vorkommende Fragen an Ihren Datenbestand nur einmal zu stellen und damit als Abfrage festzulegen. Die Daten, die aus der Abfrage resultieren, bilden das sogenannte Dynaset einer Abfrage. Ein Dynaset sieht aus wie eine Tabelle; der Unterschied ist, dass sich die Daten des Dynaset dynamisch verändern, je nachdem, welche Daten die Tabelle aufweist, auf der die Abfrage basiert.
Wenn eine Abfrage gespeichert wird, dann sind damit nicht die Daten, die aus der Abfrage resultieren, gespeichert, sondern nur die Frage an ihre Tabelle oder die Anweisung, was mit den
Daten geschehen soll. In der Regel ist es auch nicht zweckmäßig, ein Dynaset selbst zu speichern. Nur im Fall der Datenarchivierung wäre dies sinnvoll, z. B. dann, wenn Sie wissen wollen, welche Bestellungen im vergangenen Monat ausgeführt wurden, schon geliefert und bezahlt sind, also nicht mehr Bestandteil einer Bestellliste sein sollen. Dann wäre es möglich und
sinnvoll, die entsprechenden Daten aus der Tabelle herauszuziehen und separat zu speichern.
Ein gewöhnliches Dynaset wird, wie gesagt, nicht gespeichert, denn die Informationen sind
(zumindest bei einer Auswahlabfrage) ohnehin in der oder den Tabellen enthalten, sind also
redundant; außerdem sind sie veränderbar, je nach dem, welche Datensätze in den Tabellen
dazugekommen sind oder weggefallen sind, denn sie werden immer wieder aktualisiert.
4.1 Typen von Abfragen
Die häufigste Art einer Abfrage ist die Auswahlabfrage. Sie verändert nichts an den Daten,
sondern filtert die Informationen aus einer oder mehrerer Tabellen. Ein weiterer wichtiger Abfragetyp ist die Aktionsabfrage. Mit ihr werden Veränderungen an den Daten von Tabellen vorgenommen, statt nur eine Auswahl anzuzeigen. Mit dem Typ Aktionsabfrage können Sie Berechnungen an Tabellen durchführen oder Datensätze in Tabellen hinzufügen, löschen oder verändern. Ein weiterer Abfragetyp (neben anderen, die hier einleitend noch nicht thematisiert werden), sind Kreuztabellenabfragen, die - ähnlich wie in einem Tabellenkalkulationsprogramm,
z. B. Excel, - Datenbestände statistisch analysieren und die Ergebnisse übersichtlich zusammenstellen.
- 21 -
Access 2000
TAW
4.2 Abfrage-Assistenten
Für verschiedene Typen von Abfragen bietet Access sogenannte Assistenten an, also Programmroutinen, die Erleichterungen beim Erstellen von Abfragen bieten. Dies betrifft die folgenden Arten von Abfragen:
•
Kreuztabellenabfragen
•
Duplikatsuche-Abfragen
•
Inkonsistenzsuche-Abfragen
•
Datenarchivierungs-Abfragen
Zum Zusammenfassen von Analyseergebnissen in
Tabellenform
Diese Abfragen dienen dazu, doppelt vorhandene Datensätze aus Tabellen herauszusuchen
Zum Suchen von Daten, für die in einer anderen Tabelle
keine Entsprechungen zu finden sind, z. B. Kunden ohne
Bestellungen
Für den oben schon thematisierten Fall, dass Datensätze
aufgrund bestimmter Kriterien aus einer Tabelle zu kopieren und ggf. zu löschen sind und nur zum Zweck der Da
tenarchivierung in einer separaten Tabelle archiviert werden sollen.
4.3 Auswahlabfragen
Zunächst beschäftigen wir uns mit Abfragen, die ohne Assistenten erstellt werden und nur eine
Auswahl aus dem vorhandenen Datenbestand bereitstellen.
Aufgabe: Öffnen Sie die Datenbank Versicherung.
Aufgabe: Klicken Sie im Datenbankfenster zunächst auf
und dann auf die
Schaltfläche
Sie werden aufgefordert, eine Tabelle hinzuzufügen; halten Sie die [STRG] - Taste gedrückt
und klicken dann nacheinander auf die Tabellen
Kunden und Auto.
Die beiden Tabellen sind dann mit der Verbindungslinie für die 1:n-Beziehung im Abfragefenster zu sehen:
In der ersten Abfrage sollen nebeneinander die Namen der Patienten und der Versicherung
gezeigt werden. Gehen Sie so vor:
1. Auf den Feldnamen Versicherung doppelklicken
- 22 -
Access 2000
TAW
2. Genauso aus der Tabelle Patienten den
Feldnamen Name durch Doppelklick nach
unten in die zweite Spalte Feld bringen.
Das Ergebnis sieht so aus:
4. Klicken Sie jetzt auf das Symbol zum Ausführen der Abfrage:
Das Ergebnis ist die Zusammenstellung der gewünschten Daten aus den beiden Tabellen:
Sie sehen dabei, dass nur die Versicherungen angezeigt werden, für die zur Zeit ein Versicherungskunde vorhanden ist. Dies liegt an der Beziehung: Es handelt sich dabei standardmäßig
um eine Exklusionsverknüpfung. Das bedeutet, dass nur die Datensätze angezeigt werden,
bei denen es sich um die Gleichheit der Attributwerte in den beiden Tabellen handelt: Wenn in
der Tabelle Krankenkasse die Nummer 235 vorkommt und in der Tabelle Patienten auch die
Nummer 235, dann werden die Daten angezeigt.
Den Typ der Verknüpfung können Sie
folgendermaßen
ändern: Durch einen
Doppelklick auf der
Verknüpfungslinie
zeigt Access das
Dialogfeld Verknüpfungseigenschaften:
Der Verknüpfungstyp
1 ist die oben erwähnte Exklusionsverknüpfung.
Wenn Sie auf Typ 2 ändern und mit OK bestätigen, dann sehen Sie die 1:n-Verknüpfungslinie
so dargestellt:
- 23 -
Access 2000
TAW
Das Ergebnis ist die komplette Liste aller Krankenkassen. Die Hanseatische Krankenkasse ist
hier dazugekommen, zu der kein Patient vorhanden ist.:
Ähnlich wie bei Tabellen können Sie bei Abfragen zwischen der Entwurfsansicht und der Tabellendarstellung wechseln:
Abfrage ausführen
Entwurf der Abfrage
Wenn eine neue Abfrage aufgerufen wird, ist zunächst nur die Entwurfsansicht verfügbar, weil
die Abfrage noch definiert werden muss. Bei einer bereits gespeicherten Abfrage, die erneut
aktiviert wird, wird zunächst das Dynaset angezeigt.
Aufgabe: Speichern Sie die Abfrage mit dem Namen Versicherung_Patienten.
Aufgabe: Verändern Sie diese Abfrage in der Form, dass zusätzlich die Höhe des Beitragssatzes angezeigt wird.
4.4 Festlegung von Kriterien / Ausdrücke
Kriterien für die Auswahl von Datensätzen sind Angaben zur Auswahl von Daten, wie sie im
Zusammenhang mit dem Filtern erläutert wurden. Die Eingaben, die unter Kriterien gemacht
werden, werden in Access als Ausdrücke bezeichnet. Sie können in folgender Form verwendet
werden:
Eingabe
Köln
K*
M??er
>10000
nicht leer
Ist Null
Zwischen 200 und 500
<=15.01.2005
Ja / Wahr / -1
Nein / Falsch / 0
Ergebnis
Datensätze, die Köln als Eintrag im Feld haben
Datensätze, die mit dem Buchstaben K beginnen
Feldinhalte wie Meyer, Mayer oder Maier(auch: Maler)
Datensätze mit Einträgen, die größer als 10000 sind
Datensätze, die im entsprechenden Feld einen Eintrag haben
Datensätze, die in einem Feld keinen Eintrag haben
Datensätze, die einen Wert größer 200 und kleiner 500 haben
Datumsangaben, die vor oder am 15. Januar 2005 liegen
Datensätze, die in einem logischen Feld den Eintrag Ja haben
Datensätze, die in einem logischen Feld den Eintrag Nein haben
- 24 -
Access 2000
TAW
4.5 Und- /Oder-Verbindungen von Ausdrücken
Wenn zur Auswahl von Datensätzen mehrere Kriterien verwendet werden, die gleichzeitig wirken sollen, dann gelten dafür folgende Regeln:
•
Kriterien, die in einer Zeile nebeneinander stehen, sind mit logischem und verbunden. Das
heißt, beide Bedingungen zur Auswahl gelten gleichzeitig.
•
Kriterien, die in zwei (oder mehr) Zeilen stehen, sind mit dem logischen oder verbunden.
Das bedeutet, es gilt entweder die eine oder die andere der beiden Bedingungen, nach denen die Auswahlabfrage suchen soll.
Zu beachten ist dabei, dass der normale Sprachgebrauch z. T. von der logischen Bedingungsverknüpfung mit und bzw. oder abweicht: Man würde beispielsweise formulieren:
⇒
Suche alle Personen aus Köln und Düsseldorf
Auf eine Datenbankliste bezogen ist gemeint:
⇒
Suche die Datensätze, bei denen im Feld Ort jeweils entweder Köln oder Düsseldorf
eingetragen ist.
Dazu Beispiele, bezogen auf die Datenbank Versicherung, Tabelle Patienten:
Wähle alle Datensätze aus, deren V_Nr größer als 200 ist und
deren Postleitzahl zwischen
42000 und 5000 liegt:
die Abfrage ergibt:
Ändern Sie dann die Kriterien
auf oder:
Dann werden wesentlich mehr
Daten angezeigt, weil nur eines
der beiden Kriterien zutreffen
muss.
Das Oder-Kriterium kann sich
auch auf ein Datenfeld (hier:
Ort) beziehen.
Beachten Sie dabei, dass die
Bedingung bei der V_Nr (>200)
hier in beiden Zeilen aufgeführt
werden muss.
- 25 -
Access 2000
TAW
Aufgabe: Schließen Sie die geöffnete Datenbank. Öffnen Sie die Datenbank Firma. In dieser
Datenbank sollen folgende Daten über Auswahlabfragen ermittelt werden (Führen
Sie die Aufgabenstellungen nacheinander durch):
1. Suchen Sie alle Artikel, deren Einkaufspreis über 100 Euro liegt.
2. Zeigen Sie die Artikel an (Bezeichnung und Artikelnummer), deren Mindestbestand
größer oder gleich 100 Stück ist und deren vorrätige Menge weniger als 500 Stück beträgt.
3. Die Artikel vom Lieferant Meyer OHG sollen gezeigt werden.
4. Wählen Sie alle Artikel aus, die bruchempfindlich sind (Tabelle Lager aktivieren).
5. Selektieren Sie die Artikelnummer sowie den Ein- und Verkaufspreis von den Artikeln,
deren Packungsgewicht geringer als 0,5 kg ist.
4.6
Berechnungen und Funktionen in Auswahlabfragen
Aufgabe: Erstellen Sie in der Datenbank Firma zunächst eine Abfrage, basierend auf der Tabelle Artikel, die die Felder Bezeichnung, Einkaufspreis und Verkaufspreis aller
Datensätze selektiert, von denen mehr als 100 Stück auf Lager sind.
Diese Abfrage soll noch so ergänzt werden, dass nur die Datensätze ausgewählt werden, die
eine Gewinnspanne von unter 20 % aufweisen. Dazu muss eine Berechnung mit dem Feld
Verkaufspreis durchgeführt werden. Zu beachten ist dabei, dass Access keine Prozentangaben (wie z. B. Excel) versteht. Das Kriterium ist hier: Verkaufspreis ist kleiner als Einkaufspreis *1,2. Dazu muss das Feld, mit dem eine Berechnung erfolgt, in eckige Klammern gesetzt
werden:
Beachten Sie, dass die Berechnung nur zu einem Auswahlergebnis führt, nicht zu einer Veränderung der Daten in der Tabelle. Sonst müsste eine Aktionsabfrage (s. u.) erstellt werden.
Bei der Berechnung können auch Funktionen verwendet werden, um z. B. Summen, Mittelwert, Minimum und Maximum zu ermitteln. Gehen Sie dazu so vor:
1. Klicken Sie auf das Funktionssymbol:
2. Im unteren Teil des Abfrage-Fensters erscheint eine zusätzliche Zeile Funktion
3. Standardmäßig bietet das Programm die Funktion Gruppierung an. Mit dem Listenpfeil
können Sie die Liste der Funktionen "aufklappen" und entsprechend auswählen.
Aufgabe: Wählen Sie die folgenden Felder und Funktionen aus:
Dies führt zu den folgenden Ergebnissen:
- 26 -
Access 2000
TAW
4.7 Suchen in einer medizinischen Datenbank
In der Datenbank Cancer sind Auszüge aus einer Datenbank mit medizinischen Informationen
über Krebserkrankungen gespeichert. Wenn Sie die einzige Tabelle Daten in dieser Datenbank
öffnen, dann ist die Datenblattansicht der Tabelle nicht sehr übersichtlich:
Deshalb ist es hier von vornherein sinnvoll, ein sogenanntes Autoformular zu erzeugen. Dies geschieht über das Symbol in der Datenbank-Symbolleiste (bei geschlossener Tabelle).
Auto-Formular
In diesem Formular kann
man mehr erkennen:
Diese Tabelle soll in den folgenden Aufgabenstellungen nach einigen Informationen durchsucht
werden. Wie bei allen Übungsbeispielen ist auch hier die Vorstellung, es handele sich tatsächlich um eine große Datenbank mit hunderttausenden Einträgen, hilfreich, um den Beispielcharakter der Übungen zu verstehen.
Im folgenden Beispiel wird nach allen Autoren, Titel und Sprache und den Feld „Schlagwörter
deutsch“ gesucht, bei denen in den Schlagwörtern das Wort Halswirbel vorkommt.
- 27 -
Access 2000
TAW
Das Kriterium ist dabei *Halswirbel*. Der Ausdruck wie und die Anführungszeichen ersetzt
Access automatisch. Wichtig ist, dass das Jokerzeichen * vor und nach dem gesuchten Begriff
gesetzt wird, wenn es mitten im Datenfeldinhalt vorkommt.
Das Ergebnis ist:
Im Feld Schlagwörter
deutsch können Sie durch
die Tastenkombination
Umschalt F2
zoomen, denn es handelt
sich dabei um ein Memofeld:
Aufgabe: Suchen Sie jetzt die Einträge, in denen etwas über ältere Menschen erschienen ist.
Aufgabe: Suchen Sie Datensätze, die in englischer oder französischer Sprache (french) erschienen sind.
Aufgabe: Ändern Sie die vorige Abfrage,
indem nur die Anzahl der erschienenen Artikel gezählt werden soll (Funktionen einschalten).
Dabei erhalten Sie zunächst die
folgende Fehlermeldung:
Das liegt daran, dass nur Felder vom Datentyp Zahl
mit den Funktionen wie Anzahl, Summe, Mittelwert
usw. gezählt werden können. Deshalb muss ein rein
- 28 -
Access 2000
TAW
numerisches Feld gewählt werden (Feld PMID)
Aufgabe: Suchen Sie nach Datensätzen mit dem Schlagwort (englisch) DECUBITUS ULCER
oder Schluckstörungen/Diagnose.
Aufgabe: Grenzen Sie die letzte Abfrage ein auf Datensätze mit dem Erscheinungsland England (nur ein Datensatz als Ergebnis).
Aufgabe: Suchen Sie nach Daten, bei denen das Wort Tutorial im Feld DT vorkommt.
- 29 -
Document
Kategorie
Internet
Seitenansichten
11
Dateigröße
503 KB
Tags
1/--Seiten
melden