Gut bei allem ist die Ordnung: Datenbank-Planung und Realisierung, Teil 1

Die meisten Anwender verwenden nur die Musterdatenbanken der Hersteller und nehmen deshalb Einbußen an Flexibilität und Effektivität in Kauf. Dieser Kurs zeigt, wie Sie mit jeder beliebigen Datenbank-Software Ihre individuelle Datenbank aufbauen.

»Gut bei allem ist die Ordnung«, meinte der Dichter Homer in der Odyssee. Die alten Römer formulierten es so: »Quid quid agis, prudenter agas et respice finem« - Was immer Du tust, mache es gut und bedenke das Ende. Frei übersetzt heißt das: »Es reicht nicht aus, Aufgaben anzudenken, man muß sie auch zuende bringen.«

Dieser Wahlspruch gilt auch heute noch und nicht zuletzt für Datenbanken. Ich wertete einmal die Registrierkarten eines bekannten ST-Datenbankprogramms aus und stellte dabei fest, daß sich weniger als 10 Prozent der genannten Anwendungen auf eigene Überlegungen zurückführen ließen. Der Rest waren Kopien der mitgelieferten Musterdatenbanken. Diese Modifikationen arbeiten oft ineffizient, weil sie dem eigentlich gewünschten Konzept nicht entsprechen. Entweder hatte der Entwickler Sinn und Struktur einer Datenbank nicht verstanden, oder ihm fehlte die erforderliche Kreativität - ganz zu schweigen davon, daß er die individuellen Bedürfnisse des Anwenders nicht kannte. Diesem Mangel werden wir in diesem dreiteiligen Kurs abhelfen.

Was ist eine Datenbank?

Der Physiklehrer aus der Feuerzangenbowle hätte gesagt: »Da stellen wir uns mal ganz dumm und denken an einen Büroschrank. Was ist denn da drin? Kästen mit Karteikarten, Ordner mit unfertigen, teilbearbeiteten oder erledigten Vorgängen und anderen Informationen. Und was machen wir damit? Wir beantworten uns Fragen oder bearbeiten die Akten.« Nichts anderes ist eine Datenbank, nämlich eine Kartei bzw. Ablage im Computer, die allerdings leistungsfähiger als konventionelle Organisationsmittel ist. Dazu werden die Aufzeichnungen in einer bestimmten Art und Weise organisiert und bearbeitet. Nach dem Aufbau des Dateninhaltes unterscheidet man verschiedene Modelle:

Hierarchische und vernetzte Datenbanken gibt es in der Regel nur auf Großrechnern, sie interessieren hier also nicht.

Assoziative Datenbanken eignen sich besonders für Archivierungszwecke. Hier kommt es bei Suchprozessen meist darauf an, Vorstellungen miteinander zu verknüpfen. Gesucht wird zum Beispiel nach »Kardinal«, »Erzbischof« oder »Eminenz«.

Relationale Datenbanken sind das auf Computern verbreitetste Modell. Dabei beschreibt der Begriff »Relation« nicht, wie meist irrtümlich angenommen, die Verknüpfung von Inhalten verschiedener Karteien, sondern den Aufbau der Daten in einer Kartei. Sie sind als Tabellen organisiert (siehe [1]). Jede Tabellenzeile enthält einen Datensatz, also den Inhalt einer einzelnen Karteikarte. Jede Spalte enthält die Einträge des gleichen Karteikartenfeldes, zum Beispiel des Nachnamens, der Straße, der Postleitzahl oder des Ortes. Solche relationalen Datenbanken sind der Gegenstand dieses Kurses.

Zur Arbeit mit Datenbanken bedarf es eines Datenbankprogrammes, der eigentlichen Datenbank (also der Karteiorganisation) und eines Abfragesystems. Wir unterscheiden zwischen frei programmierbaren und beschränkt programmierbaren Datenbankprogrammen, einer Kombinationen aus den obengenannten Arten und speziellen Applikationen.

Frei programmierbare Datenbankprogramme erlauben das Selbstschreiben von höchst individuellen Abfragesystemen. Der Arbeitsablauf aller Bearbeitungsfunktionen muß selbst erarbeitet und geschrieben werden. Dazu bedient man sich einer Programmiersprache, die mehr oder weniger nah an den Basic-ähnlichen Standard für Datenbanksprachen »SQL« (Sequencial Query Language) angelehnt ist. Im ST-Sektor bekannte Vertreter solch frei programmierbarer Datenbankprogramme sind beispielsweise »Aditalk«, »dBASE« und »dBMan«.

Beschränkt programmierbare Datenbankprogramme enthalten bereits die Routinen für die gebräuchlichsten Funktionen, erlauben aber die Ergänzung spezieller Abfragen, beispielsweise von Auswahlroutinen und Rechenoperationen. Diese Programme müssen naturgemäß Kompromisse eingehen, da sie jedem gerecht werden möchten. Diesem Nachteil steht aber der Vorteil gegenüber, daß man nicht selbst programmieren muß und die Bedienung dadurch meist sehr leicht zu erlernen ist. Vertreter solch beschränkt programmierbarer Datenbankprogramme für den ST sind »Adimens-Exec«, »Easybase«, »IDA« und »Phoenix«.

Ein Vertreter für eine Kombination der beiden Programmtypen ist beim ST »Superbase-Professional«. Es enthält alle Vorteile eines beschränkt programmierbaren Datenbankprogrammes, erlaubt aber darüber hinaus eine individuelle Gestaltung der Menüleiste und das Einfügen selbst geschriebener Abfrageroutinen.

Spezielle Applikationsprogramme sind fertige, auf ganz bestimmte Anwendungen ausgerichtete Datenbanken zum Beispiel für die Auftrags Verwaltung oder die Buchhaltung. Sie erlauben kaum Eingriffe in die Gestaltung und zwingen den Benutzer, sich den Vorgaben weitgehend anzupassen. Das kann, muß aber kein Nachteil sein. Aus der Vielzahl solcher Programme seien für den ST die Auftragsverwaltungen »Depot« und »Reprok« und die Buchhaltungen »Fibu-Man« und »TIM« genannt.

Wichtige Unterschiede zwischen Kartei und Datenbank

In konventionellen Karteien und Ordnersystemen lassen sich Karteikarten oder Vorgänge nur nach einem Sortierkriterium ablegen, etwa alphabetisch oder nach Postleitzahlen geordnet. Innerhalb dieser Ordnung können zwar Untersortierungen stattfinden, um neu zu sortieren müssen Sie aber alle Karteikarten bzw. Vorgänge in die Hand nehmen und bewegen. Einen Notbehelf stellen sogenannte Lochnadelkarteien dar, bei denen Sie Karten mittels Nadeln nach von der Sortierung abweichenden Suchkriterien ziehen dürfen. Datenbanken kennen diese Einschränkung nicht. Hier genügt ein Knopfdruck bzw. Mausklick, um eine neue Sortierung herzustellen.

In konventionellen Kartei- oder Ablage-Organisationen tauchen die selben Angaben oft in unterschiedlichen Karteien auf, zum Beispiel die Adresse bei Angeboten, Aufträgen, Bestell- oder Lieferunterlagen.

Ändern sich solche Angaben, ist nicht gewährleistet, daß die Änderung bei allen relevanten Datenträgern durchgeführt wird. Datenbanken können Sie dagegen so strukturieren, daß Angabenwiederholungen nicht auftauchen.

Aus konventionellen Karteien und Ablagen lassen sich Daten meist nur per Abschreiben herausziehen. Ausnahmen bilden nur Matrizensysteme, bei denen teilweise Ausdrucke in unschöner Aufmachung entstehen. Datenbanken erlauben dagegen das Herausziehen aller einmal erfaßten Daten nach weitgehend frei wählbaren Gesichtspunkten. Dabei können Sie die Daten aus unterschiedlichen Karteien und Textvorgaben in passenden Ausgaben zusammenstellen.

Den Aufbau einer Datenbank können Sie mit einem Karteikasten vergleichen. Allerdings ist diese Ablage im Computer erheblich leistungsfähiger als konventionelle Organisationsmittel.

Vorbereitungsarbeiten

Jede Datenbank ist immer nur so gut, wie ihre Aufgabenstellung vorher durchdacht wurde. »Quid quid agis, prudenter agas et respice finem« (s. o.) gilt hier in besonderem Maße. Auch dann, wenn heute die meisten Datenbankprogramme eine nachträgliche Veränderung zulassen. In der Praxis hat sich die Erarbeitung eines Pflichtenheftes bewährt. Es beschreibt die Aufgaben der Datenbank auf dem Papier und dient später der Anlage von Datenbank und Abfragesystematik. Ein Pflichtenheft muß mindestens folgende Fragen beantworten:

Ein solches Pflichtenheft entsteht am Schreibtisch auf Papier durch Denken und systemgerechter Verarbeitung gemachter Recherchen. Beginnen wir mit der Aufgabenstellung. Sie soll kurz, aber eindeutig formuliert sein. Ein sehr einfaches Beispiel könnte etwa so aussehen: »Meine Datenbank soll Adressen und Termine verwalten. Für später sehe ich die Übernahme einer Bestandsverwaltung vor.«

Um zu einer optimalen Lösung zu kommen, müssen Sie die Aufgabe vollständig erkennen. Nicht selten ist die Problemanalyse schwieriger als der Entwurf der Datenbank. Viele Anwender haben Schwierigkeiten, ihre Tätigkeiten und Probleme zu beschreiben. Dann hilft nur fragen, fragen und nochmals fragen. Stellen Sie die W-Fragen: wer, was, wann, wo, wie, warum und wozu. Einige Tips helfen Ihnen dabei:

An dieses Informationen-Sammeln schließt sich die Auswertung an. Sie beginnt mit der Strukturanalyse bzw. dem Entwurf der Datenbankstruktur. In der nächsten Ausgabe besprechen wir den Entwurf von der Datenbankstruktur und gehen auf Schlüssel und Verbindungen ein. (tb)

[1] Literatur zum Thema Tabellenkalkulation: »Ziffern, Zellen, Zahlenspiele«, Kurs zu Tabellenkalkulationen, TOS Ausgabe 8 bis 10/90

Kursübersicht

Teil 1: Einführung □ was ist eine Datenbank □ wichtige Unterschiede zwischen Kartei und Datenbank □ Vorbereitungsarbeiten

Teil 2: Entwurf der Datenbankstruktur □ Schlüssel und Verbindungen

Teil 3: Entwurf der Masken □ View und Join □ Pflichtenheft


Hans Körner
Aus: TOS 03 / 1991, Seite 52

Links

Copyright-Bestimmungen: siehe Über diese Seite