3 Vorbereiten einer Datenbank

Werbung
Einführung in Datenbankarbeit
-1-
1. von 8
DATENBANKEN
EINFACHE ANWENDUNGEN
Inhaltsverzeichnis:
1
EINFÜHRUNG IN DIE DATENBANKPROBLEMATIK ........................................................... 1
1.1
1.2
1.2.1
1.2.2
1.3
2
MENGEN, OBJEKTE, BEZIEHUNGEN (RELATIONEN, VERKNÜPFUNGEN) ......................................... 2
DIE RELATIONALE DATENBANK ..................................................................................................... 3
Der Übergang von der Tabelle zur Datenbank .................................................................... 4
Weitere Datenbankanforderungen ........................................................................................ 4
WARUM ACCESS? ........................................................................................................................ 5
AUFBAU DES ACCESS-FENSTERS ............................................................................................ 5
2.1
3
DER ARBEITSBEREICH – DAS ARBEITSHEFT ................................................................................... 5
VORBEREITEN EINER DATENBANK ....................................................................................... 6
3.1
3.2
3.2.1
3.2.2
3.3
3.3.1
3.3.2
3.3.3
3.3.4
3.3.5
3.3.6
IDENTBEGRIFFE, SCHLÜSSEL UND VERKNÜPFUNGEN ..................................................................... 7
EINFÜHRUNG IN DIE ARBEIT MIT EXCEL .............................. ERROR! BOOKMARK NOT DEFINED.
Problemanalyse .....................................................................Error! Bookmark not defined.
Einfache Dateneingabe ..........................................................Error! Bookmark not defined.
FORMATIEREN – Z. B. DAS ARBEITSBLATT............................. ERROR! BOOKMARK NOT DEFINED.
Formatieren der Zeilenhöhe, Spaltenbreite ...........................Error! Bookmark not defined.
Einfügen von Spalten und Zeilen ...........................................Error! Bookmark not defined.
Löschen von Zellen, Zellinhalten ...........................................Error! Bookmark not defined.
Zellen, Bereiche .....................................................................Error! Bookmark not defined.
Arbeitsblattmenü ....................................................................Error! Bookmark not defined.
Übung ....................................................................................Error! Bookmark not defined.
1 Einführung in die Datenbankproblematik
Datenbanken eignen sich hervorragend für die Abspeicherung, Verwaltung von
Objekten, deren zugehörigen Eigenschaften wir schnell wieder auffinden, auslisten, nach
Notwendigkeit ändern oder gar löschen wollen.
Oft haben wir schon etwas von Datenbanken gehört. Die Daten werden binär kodiert
und dann abgespeichert. Nach dem Bit ist die nächst größere Einheit ein Byte, in das wir ein
Zeichen abspeichern. Ein Objekt hat oft einen Namen, eine logische Identifikationsnummer
(um sie eindeutiger von anderen gleichartigen Objekten zu unterscheiden) sowie
Eigenschaften, um das Objekt besser beschreiben zu können. Dabei können die zur
Abspeicherung vorgesehenen Daten nacheinander gespeichert werden. Die gesamte Länge
nennen wir dann einen Datensatz. Die gleichen Datensätze werden in einer Datei
abgespeichert. Mehrere Dateien, die sich logisch miteinander verknüpfen lassen, bilden ein
Filesystem. Bei einem Filesystem müssen die Identifikationsbegriffe oder Ordnungsbegriffe,
wie sie oft genannt werden, in jeder Datei abgespeichert werden. Das führt aber zu einer
mehrfachen Speicherung gleicher Daten, der so genannten Redundanz. Es ergibt sich die
Frage aber wann sprechen wir bei der Datenhaltung von einem Zeichen  einem Byte 
einem Satz  einer Datei  einem Filesystem  einer Datenbank?
75879132.doc, Norbert Burmeister, letzte Änderung: 2005.I.04, Mitschriften für Avaser Gymnasium
Einführung in Datenbankarbeit
-2-
2. von 8
Bei einer Datenbank sollen die Objekte redundanzfrei (wenn es technisch oder
ökonomisch nicht vertretbar ist, dann wenigstens redundanzarm) gespeichert werden.
Gute Beispiele für Filesysteme sind dBase oder FoxPro (mit Clipper), die in vieler
Hinsicht von sich behaupten Datenbanksysteme zu sein. (Vergleiche (von mir
vorgeschlagenes) Lehrbuch von Farkas, Csaba; Windows és Office2000 felhasználónak.)
Diese von mir getätigte Aussage, müsste eigentlich bewiesen werden.
Wenn wir von Datenbanken sprechen, sollten wir solche Systeme erwähnen, die,
obwohl sie keine Microsoftprodukte sind, dennoch weltweit zu den besten ihrer Art gehören:
 ORACLE
eines der ersten Systeme, wenn nicht überhaupt das erste System, dass
auf allen verfügbaren Hardware-Plattformen und Betriebssystemen lief.
 SYBASE
 INFORMIX
 MYSQL
ein kostenlos herunterladbares System.
Daneben gibt es auch stark abhängige Systeme – hier zwei Vertreter
 ACCESS
läuft nur unter Microsoft
 DB2
nur für IBM-Systeme geeignet
1.1 Mengen, Objekte, Beziehungen (Relationen, Verknüpfungen)
An dieser Stelle erinnern wir uns noch einmal an schon bekannte Begriffe, deren
Bedeutung an dieser Stelle noch einmal vertieft werden soll. Sie sind auch für die spätere
Arbeit mit Datenbanken wichtig. Folgende Aussagen sind vor allem für die Arbeit mit dem
PC und dem Betriebssystem von Microsoft mehr oder weniger zugeschnitten, da wir unsere
praktische Anwendung mit ACCESS von Microsoft tätigen werden. Viele Textstellen werden
Sie genauso bei der EXCEL-Einführung wiederfinden.
Wir arbeiten schon seit einer geraumen Zeit mit dem Begriff Datei. Wir
unterschieden auf dem PC verschiedene Arten. Wir setzten uns mit der Namenskonvention
auseinander und erkannten die Zweckmäßigkeit der Erweiterung im Namen. So sprechen
wir von
 exe-Dateien, wenn es sich um ausführbare Programme,
 txt-Dateien, wenn es sich um Textdateien,
 pas-Dateien, wenn es sich um den Quelltext eines PASCAL-Programmes,
 doc-Dateien, wenn es sich um Dokumente im MS-Word-Format,
 xls-Dateien, wenn es sich um eine EXCEL-Anwendung
 mdb-Dateien, wenn es sich um Access Datenbanken handelt
Vgl. Excel-Einführung:
Daten sind Informationen zu einem bestimmten Objekt. Dieses Objekt kann eine Person, ein
Gegenstand, ein Vorgang oder etwas anderes sein. Die Informationen zu diesem Objekt
beschreiben die Eigenschaften, zu denen die Objekte in Beziehung stehen. Ein anderes Wort
dafür ist Relation.
Unter der Menge verstehen wir die Vereinigung von wohl unterschiedenen Objekten mit
gleichen Eigenschaften.
Beispiel:
75879132.doc, Norbert Burmeister, letzte Änderung: 2005.I.04, Mitschriften für Avaser Gymnasium
Einführung in Datenbankarbeit
-3-
3. von 8
Solche Mengen können Äpfel, Autos, Zahlen.... sein. Wenn wir diese erfassen, dann geht es
vor allem um die Beziehungen, Relationen zu anderen Eigenschaften (Objekten).
Zur Beschreibung der Datenmenge Apfel ziehen wir folgende Objekte heran: Name für die
Apfelsorte, Farbe, Aroma, Geschmack, Zeit der Bestäubung, Zeit der Pflückreife, Zeit des
Genusses, Lagerbarkeit, Name des Obstbauern (Zulieferer), Gelieferte Menge, Ankaufspreis,
Lagerbestand, ....
Zur Beschreibung der Datenmenge Auto benutzen wir folgende Relationen von Objekten:
Typ (es ist oft ein Name), Name des Herstellers, Name des Besitzers, polizeiliches
Kennzeichen, Fahrgestellnummer, Motornummer, Farbe, Baujahr (Zeit), Zeit der
Verkehrszulassung, ....
Sowohl Auto als auch Apfel besitzen gleiche Beziehungen (Relationen) zu anderen
Objekten, als da sind: Name, Zeit, Farbe,..., Zu anderen Objekten ist die Relation nicht
vorhanden und es ist nicht notwendig dies aufzuschreiben, jedenfalls wäre es sehr seltsam
dem Apfel eine Motornummer zu vergeben. Sie finden sicherlich noch andere Beziehungen
(Relationen). So kann der Autobesitzer einen Garten mit Apfelbäumen besitzen, das ist aber
erst interessant, wenn die betrachteten Objekte Menschen sind.
Bemerkung: Tabellen sind sehr gut dafür geeignet die Datenbeziehungen der
Objekte (Relationen) in übersichtlicher Form darzustellen. Wobei die Werte der einzelnen
Beziehung unterschiedliche sein können. (z.B. Farbe kann rot, grün,... usw. sein)
Einige sehr gute Beispiele dafür lassen sich schnell finden. Immer dort wo
Gegenüberstellungen in einer übersichtlichen Form mit vielen Daten gesucht werden, greift
man auf Tabellen zurück.
Beispiele:
 Menschen werden nach ihren Berufen, Tätigkeiten, Alter, Gesundheitszustand,
Familiengröße, Einkommen, politischer Zugehörigkeit, Geschlecht, u.v.a.
erfasst.
 Von Schulkindern werden die Zensuren gegenübergestellt, die Wettbewerbsleistungen verglichen, usw.
 Haustiere werden nach der Art erfasst, Kühe nach ihren Milchleistungen, u.v.a.
 Autos werden entsprechend des Herstellers, des Motorhubraumes, dem
Jahrgang, dem Typ verglichen,
Für viele statistische Auswertungen ist die Tabelle eine geeignete Form, um etwas
übersichtlich darzustellen. Aber was ist nun der Unterschied zwischen Tabelle und
Datenbank?
1.2 Die relationale Datenbank
Auch bei den relationalen Datenbanken verfolgt man ein ähnliches Konzept.
Eine Datenbank kann vielerlei Strukturen aufweisen. Heutzutage sind vor allem
relationale Datenbanken die Hauptvertreter. Andere Vertreter sind hierarchische Systeme.
Die Struktur der relationalen Datenbanken lässt sich am besten mit Tabellen
vergleichen. In dieser Datenbank steht aber alles in einer „riesigen Tabelle“, während in einer
Tabelle nur bestimmte Eigenschaften gespeichert wurden, die anderen Eigenschaften in einer
anderen Tabelle. So erhielt man eine große Anzahl von Tabellen. Eine relationale Datenbank
75879132.doc, Norbert Burmeister, letzte Änderung: 2005.I.04, Mitschriften für Avaser Gymnasium
Einführung in Datenbankarbeit
-4-
4. von 8
sollte man sich eher wie eine einzige, riesige Tabelle vorstellen. Alle Daten, die sonst in einer
oder mehreren Tabellen zur Beschreibung eines Objektes zusammengefasst werden, werden
von nun ab in einer relationalen Datenbank gespeichert.
Als Nutzer brauchen wir uns weniger um die physikalische Speicherung der Daten
kümmern, dafür sollten wir uns aber die Beschreibung der Beziehungstabellen gründlich
vornehmen.
1.2.1
Der Übergang von der Tabelle zur Datenbank
Den Schritt zur Datenbank sollte man dann vollziehen, wenn
 es sich um eine große Datenmenge handelt, (die Kapazität des
Tabellenkalkulators reicht nicht mehr aus)
 die Struktur der Datenmenge sehr komplex ist, (mehr als eine Tabelle werden
gleichzeitig behandelt)
 die Datenspeicherung redundanzfrei sein soll, (zumindest redundanzarm)
 der gleichzeitige Lesezugriff auf die gemeinsamen Daten gestattet werden soll,
d.h. die Daten sind für alle aktuell
 die Datenhaltung robust sein soll, d.h. bei Bedienungsfehler (z. B. den Prozess
einer Veränderung abgebrochen) oder äußeren Fehlern (Computer ausgeschaltet)
soll immer ein so genannter konsistenter Zustand erreicht werden.
 Privilegien auf den Datenzugriff vergeben werden sollen. (z.B. ein Lehrer kann
nur die Zensuren der Schüler aber auch nur für sein Fach eintragen, der Schüler
kann nur seine Daten lesen – nicht die der Mitschüler, den Stundenplan können
alle lesen).
 Bei großen Datenveränderungen besitzen die Datenbanken über so genannte
Wiederaufsetzpunkte, d.h. man kann damit den Datenzustand zu einem gewissen
Zeitpunkt herstellen. Dazu sollten aber vorher Sicherheitskopien erstellt worden
sein.
1.2.2
Weitere Datenbankanforderungen
Natürlich gibt es noch viele andere Bedingungen. Welche Anforderungen stellen wir
also an eine Datenbank, welche Erwartungen sollte sie erfüllen?





Leichte Erfassung, Bearbeitung und Löschung von Daten,
Einfache Suche und Zusammenstellung (Listen, Auskünfte) der verfügbaren
Daten ermöglichen0
Schneller Zugriff auf ausgewählte Datenbereiche, d. h. Datenhaltung und
Suche von Daten, sowie Zusammenstellen unter neuen Gesichtspunkten.
Die gespeicherten Daten sind ständig verfügbar. (Das ist eine wichtige
organisatorische Frage, denn damit darf der Rechner, auf dem die Datenbank
läuft, faktisch nie ausgeschaltet werden.) Die Server – Client –
Kommunikation muss gewährleistet sein.
Herausfiltern von Daten nach bestimmten Gesichtspunkten über verschiedene
Tabellen schnell und leicht ermöglichen (z. B. Schüler einer Klasse, Schüler mit
Sprachprüfung usw. heraussuchen) über eine standardisierte Abfragesprache.
Diese Sprache nennen wir SQL (Structured Query Language = strukturierte
75879132.doc, Norbert Burmeister, letzte Änderung: 2005.I.04, Mitschriften für Avaser Gymnasium
Einführung in Datenbankarbeit
-5-
5. von 8
Abfragesprache) Wenn wir ein Programm in SQL geschrieben haben, dann
erhalten wir immer das gleiche Ergebnis, egal auf welchem Rechner und mit
welchem Betriebssystem oder Datenbankbetriebssystem wir unsere Datenbank
betreiben. Natürlich muss die Datenbank gewisse Kriterien erfüllen, damit meine
obige Aussage auch zutrifft. (Vergleichbar vielleicht, ich kann meinen Rechner
überall starten, wo ich auch Strom habe – damit erklärte ich aber nicht die
Normeinhaltung für die Stromerzeugung (230V, Wechselspannung) in Amerika
haben wir aber nur 110V und sogar in England haben wir oft andere Steckdosen
– Leute, die ihr Mobiltelefon aufladen wollten, kennen sicher das Problem)
Bemerkung: Wie auch bei anderen Anwendungen beschränken wir uns auch hier nur auf
einige wichtige Funktionen. Wir wollen ein paar Möglichkeiten des Einsatzes von
Datenbanken kennen lernen. Ein paar Anfragen in SQL an die Datenbank richten. Die
Planung, der Entwurf, die Programmierung, die Durchführung von echten
Datenbankanwendungen überlassen wir dann doch den Experten.
Aufgaben und Ziel:
 Was verstehen Sie unter einer Datenbank? Nennen Sie mehrere Beispiele und erläutern
Sie die logischen Verknüpfungen einer relationalen Datenbank.
 Was bedeutet eine eigentlich Relation?
 Wozu dient die SQL?
1.3 Warum ACCESS?
Moderne Tabellenkalkulatoren sind heutzutage einander sehr ähnlich in ihrem
Leistungsumfang. EXCEL ist Teil des Microsoft-Office-Pakets, und man nimmt was man
hat. Je mehr verbreitet es ist, desto besser für uns. Damit gibt es weniger Probleme, dass in
der Schule, zu Hause, beim Nachbarn, bei Freunden andere Softwareprodukte benutzt
werden. Mit anderen Worten unsere Schularbeiten und Hausaufgaben können auf vielen
Rechner ohne große Probleme bearbeitet werden.
Natürlich könnte man auch MYSQL benutzen – sagen einige. Sicher haben sie
Recht. Es handelt sich schließlich um eine kostenlose, für alle verfügbare Software. Das
Problem bleibt vorläufig unbeantwortet.
2 Aufbau des ACCESS-Fensters
2.1 Der Arbeitsbereich – das Arbeitsheft
75879132.doc, Norbert Burmeister, letzte Änderung: 2005.I.04, Mitschriften für Avaser Gymnasium
Einführung in Datenbankarbeit
-6-
6. von 8
Bei der Arbeit mit ACCESS sehen wir die Forderung nach der WYSIWYGUmgebung als erfüllt an.
Nach dem Start des Datenbankbetriebssystems (DBBS) stellt uns ACCESS ein
leeres Fenster zur Verfügung Wir können als Standardvoreinstellung auf folgende
Rollomenüs (Register) zurückgreifen:
Datei Bearbeiten Ansicht
Einfügen
Werkzeuge Fenster
Hilfe
Darunter sind ein paar Symbole für den schnellen Zugriff aktiv, die meisten sind
ohne irgendwelche Daten noch ohne Wirkung. Dank SAA sind uns diese Symbole irgendwie
bekannt, oder?
Augenscheinlich ist der Arbeitsbereich ebenfalls nicht bereit. Ähnlich zu WinWord
erzeugen wir eine neue Datenbank oder wir arbeiten mit einer schon vorhandenen. Die
Möglichkeit unsere Objekte mittels vorgefertigter Schablonen (für uns ist nur die leere
interessant, weil wir alles selbst machen wollen) abzuspeichern ist vorhanden.
Bevor wir aber zur eigentliche Abspeicherung kommen, müssen wir einige
vorbereitende Arbeiten ausführen.
3 Vorbereiten einer Datenbank
75879132.doc, Norbert Burmeister, letzte Änderung: 2005.I.04, Mitschriften für Avaser Gymnasium
Einführung in Datenbankarbeit
-7-
7. von 8
3.1 Identbegriffe, Schlüssel und Verknüpfungen
Jedes Objekt ist einmalig, obwohl es natürlich viele von seiner Art geben kann.
Wenn wir unsere Objekte abspeichern müssen wir darauf achten, dass keine Verwechslungen
auftreten können. So hat jeder Mensch z.B. einen Namen, eine Fabrikat eine Bezeichnung
z.B. Heft. Anhand seines Namens können wir also die Objekte unterscheiden. Sofort ist klar,
nur mit dem Namen bzw. der Bezeichnung kommen wir nicht weiter. Der Name ist der
Oberbegriff für unser Objekt, da er an erster Stelle steht ist es der 1. Oberbegriff. Wir haben
an dieser Stelle nicht vor, unsere Objektebene zu verlassen, denn dann müssen wir weitere
Identifikationsbegriffe (den Identbegriff) bereitstellen, unabhängig in welche Richtung wir
die Ebene verlassen, um diese eine gewisse Person in der Datenbank wieder zu finden.
Beispiel: Unsere Betrachtungsebene sind die Schüler. So können wir die Schüler
einer Klasse, aller Klassen einer Altersstufe, einer Schule, einer Stadt, … betrachten. In der
Ebene Schule gehören aber auch die Objekte Lehrer, das Verwaltungspersonal, ... usw. dazu.
In der Ebene Klasse sind nur uns nur die unterrichtenden Lehrer wichtig. Der Begriff
„Name“ wird aber nach wie vor eine entscheidende Rolle spielen.
3.2 Wichtige Merkmale moderner relationaler Datenbanksysteme
Neben den allgemeinen Anforderungen an eine Datenbank, die wir oben aufführten, gibt es
noch weitere Bedingungen, die wichtig für den Betreiber einer Datenbank sind. Die
Datenbeziehungen müssen immer gegeben sein. Es dürfen keine „Datenleichen“ auftreten,
aber ebenso wenig dürfen Daten fehlen.
Beispiel: In einer Bibliothek sollte der Buchbestand immer aktuell sein. Es muss immer der
Ort des Buches (Regal, Leser,…) bestimmbar sein, d.h. die Informationskette darf nicht
unterbrochen sein. Wenn zu einem Buch, das eigentlich schon in der Papiermühle zermahlen
wird (ausgesondert), der Datensatz zum Regalplatz noch in der Datenbank steht.








automatische Gewährleistung der referentiellen Integrität (Eindeutigkeit bei
Zuordnungen),
Trigger (automatisches Weiterzählen) und
Data Dictionaries (Datenübersichtsverzeichnisse)
Sicherheitsfeatures, die versehentliches Löschen oder unbefugte Zugriffe verhindern
hohe Performance
ODBC - Fähigkeit (Open Database Connectivity)
mit Multimedia-Daten umgehen können
Inter- und Intranet-Fähigkeit
75879132.doc, Norbert Burmeister, letzte Änderung: 2005.I.04, Mitschriften für Avaser Gymnasium
Einführung in Datenbankarbeit
-8-
8. von 8
3.3 Hinweise zum praktischen Aufbau einer Datenbank
Aus den obigen Beschreibungen wollen wir nun einige Schritte beim Aufbau einer
Datenbank besprechen.
Zunächst müssen wir die Struktur unseres Projekts aufstellen, so dass wir zu den Objekten
diejenigen Eigenschaften (Relationen) erfassen, die notwendig sind. Da wir mehr als nur ein
Objekt untersuchen (Vergleichen Sie Themen zum Tabellenkalkulator), sollten wir genau
festlegen, welches der Primärschlüssel ist, über den wir die Datenerfassung, Datensuche
(engl. search), Datenausgabe auf einfache Art erledigen. Welches sollen die
untergeordneten Schlüssel (sekundär) werden, die bei der Datenausgabe relativ häufig von
uns benutzt werden (eines der Projektziele).
Oft reichen aber Primärschlüssel und Sekundärschlüssel nicht aus, um ein Objekt eindeutig
unter den vielen gleichen Schlüsseln (Beispiel: Name, Vorname, Geburtsdatum) eindeutig zu
identifizieren. Oder aber es müssten so viel Schlüssel gleichzeitig verarbeitet werden, was
sich wiederum nachteilig für die Verarbeitungsgeschwindigkeit auswirkt. So werden für die
Datenverarbeitung eineindeutige (X↔Y) Identifikationsbegriffe (Identbegriff) geschaffen.
Einige Beispiele für Identifikationsbegriffe, wobei uns einige sicherlich bekannt vorkommen.
Personen:
Personenkennzahl PKZ
Gesundheitswesen:
Sozialversicherungsnummer
Waren
Strichcode (Barcode), Artikelnummer
Verlagswesen
ISBN
Bankwesen
Kontonummer
Netzwerkkarten
MAC-Adresse, teilweise IP-Adresse
Post
Postleitzahl der Ort
Kraftfahrzeuge
Nummernschild
Autos
Motorennummer, Karosserienummer
Menschen
Fingerabdruck, DSN
Telekommunikation
Telefonnummer
75879132.doc, Norbert Burmeister, letzte Änderung: 2005.I.04, Mitschriften für Avaser Gymnasium
Herunterladen