Da steht sie nun im Schrank, die mühsam erkaufte Musik-CD-Sammlung. Dank der nur wenig sortierten Reihenfolge fehlt jedoch jeglicher Überblick, und die ursprünglich in StarOffice Writer erstellte Textliste verwirrt mehr, als dass sie wirklich weiterhilft. Zudem hätte man gerne die schon vor langer Zeit verliehene "TuX Hits 2000"-CD zurück - wenn einem doch nur einfallen würde, wer sich damals das rare Exemplar unter den Nagel gerissen hat.
Wenn Ihnen diese Situation bekannt vorkommt, kann Ihnen StarOffice mit seiner Datenbank StarOffice Base weiterhelfen. Mit ihr lassen sich nicht nur sämtliche Sammlerobjekte übersichtlich verwalten, sondern auch präzise Buch darüber führen, wer sich welches Stück wann ausgeliehen hat. Im Folgenden wollen wir Sie anhand einer CD-Verwaltung Schritt für Schritt mit den Arbeitsweisen und Konzepten von StarOffice Base vertraut machen. Wie Sie sehen werden, ist eine Datenbank nicht nur etwas für große Rechenzentren, sondern kann auch in vielen privaten Bereichen zu einer wahren Hilfe werden. Um uns dabei nicht vollständig von den eingebauten Assistenten abhängig zu machen, wollen wir im Gegensatz zu anderen Workshops auch selbst etwas Hand anlegen.
Bevor es mit der eigentlichen Arbeit unter StarOffice los geht, müssen wir uns ein paar Gedanken zum Aufbau der Datenbank machen. Auch wenn Sie selbst eine neue Datenbank anlegen, sollten Sie deren Struktur bereits im Vorfeld festlegen. Dies ist notwendig, da in den meisten Fällen das nachträgliche Ändern einer Datenbankstruktur zu einem nicht unerheblichen Datenverlust führen kann.
Jede Datenbank besteht aus einer oder mehreren Tabellen, in denen die einzelnen Daten abgelegt werden. In jeder Spalte stehen die Daten, die zu einer bestimmten Kategorie gehören, wie z. B. der Titel oder der Interpret einer CD. Demnach findet sich in jeder Zeile genau ein vollständiger Datensatz wieder - in unserem Fall wären dies die Informationen zu einer kompletten CD (vgl. Abbildung 7).
Für unser Beispiel werden wir zwei Tabellen anlegen: die erste nimmt die Informationen der einzelnen CDs, die zweite alle Angaben über die verliehenen Datenträger auf. Obwohl dies sehr stark danach klingt, dass Daten doppelt eingegeben werden müssen, ist dies bei einer modernen Datenbank wie der von StarOffice verwendeten (Adabas D) glücklicherweise nicht mehr der Fall. Mit Hilfe diverser Verknüpfungsmechanismen erlauben sie, die Tabellen auf verschiedene Arten miteinander in Bezug zu setzen. In unserem Beispiel werden wir in der zweiten Tabelle ein spezielles Datenbankfeld einrichten, das auf die zugehörige verliehene CD in der ersten Tabelle verweist. Auf diese Weise lassen sich doppelte Dateneingaben bequem umgehen. Mehr dazu im zweiten Teil unseres Workshops.
Die hier vorgestellte CD-Verwaltung ist nur ein kleines Beispiel. Je größer Ihre Tabellen, bzw. die Menge der zu speichernden Daten werden, desto schwieriger wird es, eine geeignete Aufteilung zu finden (was schreibt man in welche Tabelle). Dabei sollten Sie versuchen, die Anzahl der Datenfelder, die Sie in einer Tabelle speichern möchten - also die Anzahl der Spalten - möglichst gering zu halten. Selbstverständlich können Sie auch alle Daten in nur einer einzigen, großen Tabelle ablegen. Dies ist allerdings nur bei kleineren Datenbeständen ratsam, da bei wachsender Tabellengröße nicht nur die Datenbankzugriffe langsamer werden, sondern auch die Übersichtlichkeit schneller verloren gehen kann.
Adabas D
Adabas D ist eine professionelle Datenbank der Software AG. In der kostenlosen Version, die StarOffice beiliegt, bzw. die von der StarOffice-Homepage herunter geladen werden kann, gelten einige Einschränkungen: So darf jede Datenbank maximal 100 MB groß werden, und die Anzahl der gleichzeitigen Nutzer im Mehrbenutzerbetrieb ist auf drei beschränkt. Bitte beachten Sie, dass Sie Adabas D nicht als Benutzer root verwenden können.
Adabas D arbeitet nach dem Client-/Server-Prinzip, bei dem ein spezielles Programm, der Server, alle Datenbanken verwaltet und Anfragen von weiteren Programmen, den Clients, annimmt und bearbeitet. Mit Adabas D wird sowohl das Server-Programm, als auch ein Client-Programm ausgeliefert. Im Falle von StarOffice übernimmt das Modul StarOffice Base die Steuerung beider Komponenten, so dass Sie sich nicht mit den ansonsten notwendigen kryptischen Textbefehlen auseinandersetzten müssen.
Weitere Informationen finden Sie in der StarOffice-Hilfe unter dem Stichwort Adabas und im Internet auf der Adabas-D-Homepage unter http://www.adabas.com/.
Sollte Adabas D trotz korrekt verlaufener Installation bei Ihnen nicht arbeiten wollen, so liegt dies mit hoher Wahrscheinlichkeit an fehlenden oder fehlerhaften Umgebungsvariablen. Bei der Installation versucht das Setup-Programm automatisch, in einer der versteckten Dateien .bashrc (nebst zugehöriger Datei .profile), .cshrc oder .tcshr einige Einträge zu ergänzen: Ist keine dieser Dateien in Ihrem Heimatverzeichnis vorhanden, sollten Sie zunächst in Ihrem Handbuch nachschlagen, welche Shell Ihr Linux-System verwendet. (Die meisten Linux-Distributionen verwenden die Bash als Standard-Shell.) Erstellen Sie anschließend mit einem Texteditor eine leere, zur entsprechenden Shell gehörende Konfigurationsdatei. Falls Sie unsicher sein sollten, können Sie auch alle vier der oben genannten Dateien anlegen. Installieren Sie anschließend Adabas D erneut.
Wenn Ihnen StarOffice Base einen Fehler meldet, so können Sie sich über den Knopf Zusätze eine detailliertere Beschreibung anzeigen lassen. Um die Fehlermeldung vollständig interpretieren zu können, benötigen Sie allerdings gute Kenntnisse sowohl der englischen Sprache, als auch im Umgang mit der Datenbanksprache SQL. Leider gibt die Hilfe von StarOffice keinerlei Informationen darüber preis, welche Adabas-D-Fehler wie behoben werden können. Bei Problemen bleibt Ihnen somit nur die Suche im Internet oder der Umstieg auf eine dBase-basierende Datenbank.
Kasten 2: Eine Datenbank wieder loswerden
Notieren Sie sich zunächst den Namen Ihrer Datenbank, wie er im Explorer auftaucht. Klicken Sie anschließend mit der rechten Maustaste auf diesen Eintrag und wählen Sie Eigenschaften.... Wechseln Sie auf das zweite Register Typ und notieren Sie sich den Namen im Eingabefeld Datenquelle. Verlassen Sie StarOffice und wechseln Sie im Datei-Manager in das Verzeichnis user/explorer in Ihrem StarOffice-Verzeichnis. Letzteres wiederum sollte sich standardmäßig in Ihrem Heimatverzeichnis befinden. Löschen Sie dort die Datei, die den Namen Ihrer Datenbank trägt. Wechseln Sie anschließend in das Unterverzeichnis sql der Adabas-D-Installation. Löschen Sie dort alle Dateien, die vor dem Punkt die Zeichenkette enthalten, die Sie zuvor unter StarOffice als Datenquelle identifiziert haben. Im Unterverzeichnis config gehen Sie analog vor. Zum Abschluss entfernen Sie noch im Verzeichnis work das den Namen der Datenquelle tragende Unterverzeichnis. Damit ist Ihre Datenbank endgültig gelöscht.
Hier genügt es, im Explorer den Datenbanknamen mit der rechten Maustaste anzuklicken und im Kontextmenü Löschen zu wählen. Sobald Sie das nun auftauchende Dialogfenster mit Löschen bestätigen, wird Ihre Datenbank umgehend und vollständig entfernt.
In diesem Workshop wollen wir die angesprochenen Daten unter Verwendung der mitgelieferten Datenbank Adabas D verwalten. Wenn Sie dieses Zusatzmodul nicht installieren möchten, können Sie auch auf ein in StarOffice Base eingebautes Datenbankformat wie z. B. dBase ausweichen. Die im Folgenden genannten Schritte sind in allen Datenbankformaten mehr oder weniger identisch. StarOffice Base übernimmt dabei die Steuerung der im Hintergrund arbeitenden Datenbank und stellt somit für jedes Format eine einheitliche Benutzerschnittstelle zur Verfügung.
Sofern Sie Adabas D nutzen möchten, das Datenbankprogramm aber noch nicht installiert haben, sollten Sie dies als erstes nachholen. Liegen StarOffice und Adabas D Ihrer Distribution bei, können Sie diese über das dort beiliegende Setup-Programm installieren. Schlagen Sie hierzu ggf. auch in Ihrem Handbuch nach. Falls Sie StarOffice nicht auf einer CD-ROM vorliegen haben, können Sie Adabas D auf der StarOffice-Homepage http://www.sun.com/staroffice/ kostenlos herunter laden. Besitzer einer StarOffice-CD sollten diese mounten, dort in das Verzeichnis linux/adabas wechseln und das Programm adabas starten. Folgen Sie anschließend den Anweisungen des grafischen Installationsprogramms auf dem Bildschirm. Nach erfolgreicher Installation müssen Sie sich von Ihrem Linux-System ab- und anschließend erneut anmelden. Dies ist notwendig, da Adabas D während der Installation einige Umgebungsvariablen anpasst, die erst nach dem erneuten Anmelden vom Betriebssystem korrekt gesetzt werden (vgl. Kasten "Adabas D").
Damit wären alle Vorbereitungen abgeschlossen, und StarOffice kann gestartet werden. Im Desktop sollten Sie als erstes den Explorer am linken Bildschirmrand einblenden (Ansicht/Explorer). Nur über ihn ist ein schneller und bequemer Zugriff auf alle Datenbanken und deren Komponenten möglich. Stellen Sie weiterhin sicher, dass der Inhalt der Gruppe Explorer sichtbar ist. Sollte dem nicht so sein, klicken Sie auf den gleichnamigen Schalter innerhalb des Explorer-Fensters. Damit die Arbeitsfläche nicht unter ihm verschwindet, sollten Sie ihn zum Schluss noch mit der Stecknadel auf dem Desktop fixieren.
Nun können wir unsere Musik-Datenbank anlegen. Dazu wählen Sie aus dem Menü Neu/Datenbank. Es erscheint ein Fenster, auf dem Sie einige wichtige Grundeinstellungen eintragen müssen. Auf dem Register Allgemein verpassen Sie der neuen Datenbank als erstes einen Namen, wie z. B. Musikdatenbank. Als nächstes bestimmen Sie auf dem Register Typ das Datenbankformat.
Standardmäßig ist dort Adabas D eingestellt. Wie eingangs schon erwähnt, können Sie hier auch ein anderes Format, wie z. B. dBase wählen. Sollten Sie sich für Adabas D entschieden haben, so muss das Register Server Administration erscheinen. Das Fehlen dieses Registers ist immer ein sicheres Indiz dafür, dass Adabas D von StarOffice Base entweder nicht gestartet oder erreicht werden konnte (vgl. Kasten 1, Adabas D).
Bei einer dBase-Datenbank geben Sie nun auf dem Register Typ in das Eingabefeld Verzeichnis den Pfad ein, in dem Ihre Datenbank gespeichert werden soll. Falls Sie Adabas D einsetzen, tragen Sie in dasselbe Feld (dort Datenquelle genannt) einen maximal acht Zeichen langen Namen ein. Für unsere CD-Verwaltung könnte dies z. B. musikdb sein. Diesen Namen verwendet Adabas D zur internen Identifizierung unserer Datenbank. Klicken Sie anschließend auf Neue Datenquelle.
In dem auftauchenden Fenster hat StarOffice bereits die meisten Felder mit sinnvollen Werten gefüllt. Nur der Administrator der Datenbank muss noch einen Namen und ein Passwort erhalten. Dies ist notwendig, da Adabas D mehreren Benutzern den gleichzeitigen Zugriff auf die Datenbank gestattet. Der Administrator ist dabei ein besonderer Benutzer, der die erzeugte Datenbank in allen Bereichen bedingungslos verändern und auch löschen darf. Als Administratornamen können Sie z. B. denselben Namen verwenden, unter dem Sie sich auch am Linux-System anmelden. Der Name sollte keine Umlaute und Sonderzeichen enthalten, da ansonsten später Probleme bei der Authentifizierung entstehen können. Klicken Sie anschließend auf Passwort und geben Sie in die beiden Felder ein von Ihnen erdachtes Passwort ein. Schließen Sie alle Fenster mit einem Klick auf OK, bis Sie wieder im Dialogfenster Eigenschaften von Musikdatenbank landen. Gerade auf etwas schwächeren Rechnern sollten Sie hierbei etwas Geduld mitbringen, da zum einen Adabas D erst im Hintergrund gestartet und zum anderen die Datenbank angelegt werden muss. Während dieser Zeit ist StarOffice nicht ansprechbar.
StarOffice sollte nun alle weiteren Register des Fensters Eigenschaften von Musikdatenbank automatisch ausgefüllt haben. Sie können noch auf dem Register Server Administration durch Markieren des Schalters Service beim Beenden von StarOffice herunterfahren angeben, ob Adabas D beim Beenden von StarOffice automatisch mit beendet werden soll. Nach einem erneuten Klick auf OK wird die Datenbank auf dem Desktop geöffnet und sollte gleichzeitig im Explorer als neuer Eintrag auftauchen.
Sie können den gerade verlassenen Einstellungsdialog jederzeit über das Kontextmenü der rechten Maustaste wieder aufrufen. Dazu drücken Sie über dem Namen der Datenbank im Explorer die rechte Maustaste und wählen anschließend den Punkt Eigenschaften.
Betrachten Sie nun die Statusleiste des StarOffice-Desktops am unteren Fensterrand: Dort finden Sie neben der Uhr eine kleine Ampel, die den Status von Adabas D anzeigt (vgl. Abbildung 7). Steht sie auf grün, ist die Datenbank einsatzbereit. Sollten Sie mehrere Datenbanken geöffnet haben, so existiert für jede einzelne eine eigene Ampel. Wenn Sie bei aktivierter Tooltip-Hilfe (Hilfe/Tipp) mit dem Mauszeiger ein paar Sekunden über einem der Symbole verharren, zeigt Ihnen StarOffice an, zu welcher Datenbank diese Ampel gehört.
Auf der Arbeitsfläche des Desktops sollten nun vier Symbole auftauchen. Mit ihnen lassen sich neue Formulare, Berichte, Abfragen oder Tabellen anlegen, bzw. bereits bestehende verwalten. Werden diese Symbole bei Ihnen nicht angezeigt, so fördert sie ein Doppelklick auf den Datenbanknamen im Explorer-Fenster zu Tage. Alternativ können Sie hierzu auch direkt den Explorer verwenden: Sobald Sie auf das Plus-Symbol vor dem Datenbanknamen klicken, tauchen dieselben Symbole wie auf dem Desktop auf.
Für unser Beispiel müssen wir als erstes zwei neue Tabellen anlegen, die unsere späteren Daten aufnehmen werden. Bei der ersten Tabelle verwenden wir den AutoPiloten, der uns auch im späteren Verlauf noch einige gute Dienste leisten wird. Dieser kleine Helfer bietet für die unterschiedlichsten Lebenslagen bereits vorgefertigte Datenbankelemente an, die wir nur noch an unsere eigenen Bedürfnisse anpassen müssen.
Klicken Sie mit der rechten Maustaste entweder auf das Tabellen-Symbol auf dem Desktop oder den entsprechenden Eintrag im Explorer-Fenster. Wählen Sie aus dem erscheinenden Kontextmenü den Punkt Neu/Tabelle/AutoPilot. Im nun neu geöffneten Fenster selektieren Sie in der oberen Auswahlliste den Punkt Privat. In der darunter liegenden Liste zeigt Ihnen der Autopilot eine Auswahl an bereits vordefinierten Tabellen an. Markieren Sie für unsere CD-Verwaltung den Punkt Musiksammlung und klicken Sie auf weiter>>.
In Abbildung 5 werden auf der linken Seite einige Vorschläge für die möglichen Datenbankfelder angezeigt. Sie können hier die für Sie in Frage kommenden Felder auswählen, indem Sie in der linken Liste einen Kandidaten markieren und dann auf den einfachen Pfeil klicken. Möchten Sie alle Felder in Ihre Datenbank übernehmen, genügt ein Klick auf den Doppelpfeil. Falls Sie ein Feld irrtümlich auf die rechte Seite geschoben haben, so können Sie es mit den Pfeilen nach links wieder entfernen. Die Einträge, die sich in der rechten Liste befinden, bilden nachher die Spalten der Datenbanktabelle.
Dabei entsprechen die Listeneinträge von oben nach unten den Tabellenspalten von links nach rechts. Dies bedeutet insbesondere, dass die Eingabe der Daten in genau dieser Reihenfolge stattfindet: Steht z. B. der Interpret in der Liste über dem AlbumNamen, so müssen Sie später bei der Eingabe immer zuerst den Interpreten und anschließend den Albumnamen eingeben. Für unsere CD-Sammlung sollten Sie die Felder MusikID, Interpret, AlbumName, MusikKategorie und Spielzeit in genau dieser Reihenfolge in die rechte Liste übernehmen. Diese Felder reichen für unsere kleine Beispieldatenbank aus. Das erste Feld MusikID wird uns später helfen, die zwei Tabellen miteinander zu verknüpfen. Wenn Sie fertig sind, klicken Sie auf weiter>>. Im nächsten Schritt bietet Ihnen der Autopilot noch einmal die Möglichkeit, sowohl den Namen der Tabelle, als auch die der einzelnen Felder umzubenennen.
Dazu müssen Sie zunächst das Feld, dessen Namen Sie ändern möchten, in der linken Liste markieren und dann im Eingabefeld Feldname ändern. Damit der modifizierte Name dem Feld endgültig zugewiesen wird, müssen Sie anschließend noch auf den Schalter Übernehmen klicken. Benennen Sie für unser Beispiel das Feld MusikID in CDNummer um. Den vorgeschlagenen Tabellennamen belassen Sie bei Musiksammlung, bzw. bei einer dBase-Datenbank bei Musiksa1. Klicken Sie nun auf weiter>> und im nächsten Dialog auf Fertig stellen. Die Tabelle wird nach dem Erstellen auf dem Desktop angezeigt, und Sie können mit der Eingabe Ihrer CD-Daten beginnen. Bitte beachten Sie, dass der Name einer dBase-Tabelle standardmäßig nur acht Zeichen lang sein darf. Zwar bietet StarOffice Base auch die Option an, lange Namen zu verwenden, allerdings kann dies im Zusammenspiel mit dem Autopiloten zu Problemen führen.
Um mit der Dateneingabe etwas vertrauter zu werden, sollten Sie über die Tastatur nun ein paar Ihrer Musik-CDs eingeben. In das jeweils nächste Feld gelangen Sie, indem Sie es entweder mit der Maus anklicken oder die Tabulatortaste betätigen. Sobald Sie mit der Eingabe beginnen, legt StarOffice Base eine neue, leere Zeile an, die mit einem Sternchen in der ersten (namenlosen) Tabellenspalte markiert wird. Zusätzlich wird die Zeile, in der Sie Ihre Eingabe vornehmen, mit einem Stift-Symbol gekennzeichnet. Bitte beachten Sie, dass die eingegebene Zeile in Adabas D erst gespeichert wird, wenn Sie entweder die Zeile wechseln oder die Tabelle speichern (über das Disketten-Symbol in der Symbolleiste oder per Datei/aktuellen Datensatz speichern). Haben Sie die Eingabe für eine Zeile abgeschlossen, so können Sie innerhalb der Tabelle mit den Pfeiltasten navigieren. Ein kleines Dreieck in der namenlosen Spalte zeigt dabei an, in welchem Datensatz Sie sich gerade befinden. Möchten Sie die Eingabe abbrechen oder haben Sie einen Datensatz angelegt, den Sie nun wieder los werden wollen, so genügt ein Klick mit der rechten Maustaste auf die entsprechende Zeile in der linken, namenlosen Spalte. Wählen Sie anschließend aus dem Kontextmenü Zeilen löschen bzw. Rückgängig: Dateneingabe.
Am unteren Bildschirmrand, links neben der horizontalen Bildlaufleiste, finden Sie übrigens noch einmal alle Navigationsfunktionen wieder: Mit den Pfeilen bewegen Sie sich zwischen den einzelnen Datensätzen, mit dem Sternsymbol legen Sie einen neuen Eintrag an, und durch die Eingabe einer Zahl in das Eingabefeld landen Sie direkt bei diesem Datensatz.
Beim Eintragen der Daten werden Sie feststellen, dass Sie in das erste Feld CDNummer immer einen eindeutigen Wert eingeben müssen. Dies liegt daran, dass dieses Feld vom Autopiloten als "Primärschlüsselfeld" definiert wurde. Hierdurch wird sichergestellt, dass für jeden Datensatz nicht nur zwingend eine CDNummer existiert, sondern diese auch nur genau ein einziges Mal vergeben wird. So werden doppelte Zeilen automatisch unterbunden, bzw. können doppelte CDs (mit gleichen Namen) eindeutig voneinander unterschieden werden. Dazu aber im nächten Workshop-Teil mehr.
Des weiteren können Sie beobachten, dass die Einträge im Feld Spielzeit von StarOffice Base immer in ein einheitliches Format gebracht werden. Wie in jeder Datenbank lässt sich auch unter StarOffice Base jedem Feld ein Typ zuordnen. In diesem Fall hat der Autopilot festgelegt, dass im Feld Spielzeit Uhrzeiten abgelegt werden. Bei der Eingabe werden diese von StarOffice Base automatisch in ein entsprechendes, einheitliches Format gebracht. Hat Ihre CD z. B. eine Spieldauer von 79 Minuten, so können Sie 00:79 eingeben; dies wird dann in 01:19:00 umgewandelt.
Ansonsten erfolgt die Bedienung einer StarOffice-Base-Datenbanktabelle ähnlich wie bei einer StarOffice-Calc-Tabelle: Das Kopieren und Einfügen, sowie die Korrektur eine Zelle erfolgt analog über die entsprechenden Menüpunkte. Ähnliches gilt auch für die Spaltenbreite, die Zeilenhöhe und die Formatierung der Tabelle. Passt z. B. der Name eines Interpreten nicht in das zugehörige Feld, so gibt es auch hier mehrere Möglichkeiten, ihn wieder ins rechte Licht zu rücken:
Wie bereits erwähnt speichert StarOffice Base eine Zeile direkt nach der Eingabe in Adabas D ab. Aus diesem Grund ist es nicht notwendig, die Tabelle vor dem Schließen zu speichern - sie befindet sich immer auf dem aktuellen Stand.
Alle Tabellen finden Sie im Explorer-Fenster unterhalb des entsprechenden Datenbankeintrages wieder. Um dort einen Teil des Baums zu expandieren, klicken Sie auf das Plus-Symbol vor dem Namen. Um die Tabelle zu öffnen, führen Sie über ihrem Namen einen Doppelklick aus. Wie Sie erkennen können, existieren für unsere Beispieldatenbank bereits drei Tabellen. Zudem wurde deren Namen der Benutzername des Erstellers vorangestellt. Die zwei zusätzlichen Tabellen werden standardmäßig von Adabas D angelegt. Sie verwalten einige Informationen, die die Datenbank selbst benötigt. Anhand des vorangestellten Namens kann man erkennen, zu welchem Benutzer diese Tabelle gehört.
Damit endet auch schon unser erster Workshop-Teil. Die eingegebenen Daten sollten Sie aber noch nicht löschen, da wir mit ihnen beim nächsten Mal in das weitere, interessante Funktionsangebot von StarOffice Base hinein schnuppern wollen. Abschließend werden wir dann unsere Beispieldatenbank mit der zweiten Tabelle komplettieren.