colors.jpg

© sxc.hu

Den Überblick behalten

Daten verwalten mit OpenOffice Base

01.01.2006
Datenbanken unter einer graphischen Oberfläche erstellen – und die Daten, zum Beispiel für Serienbriefe, direkt in das Textverarbeitungsprogramm übernehmen: OpenOffice 2.0 beinhaltet erstmals ein Pendant zu Microsoft Access.

Eine wesentliche Neuerungen der neuen OpenOffice Version 2.0 stellt Base dar: Ein stark verbessertes Datenbankmodul auf Basis der Java-basierten, relationalen Datenbank-Engine von HSQLDB. Base eignet sich ebenso für einfache Rezeptsammlungen wie für umfangreiche Ressource-Management-Lösungen. Obwohl Base den Umgang mit Datenbanken erheblich erleichtert, sind dennoch einige Grundkenntnisse nötig, um eine Datenbankanwendung zu programmieren. Dieser Artikel erläutert den Weg vom Entwurf bis zur fertigen Datenbank anhand eines einfachen Beispiels: einer Datenbank zur Verwaltung von Aufgaben, Arbeitsstunden und Kunden eines Dienstleisters.

Datenbankplanung

Ein relationales Datenbank-Management-System (RDBMS) umfasst in der Regel vier Komponenten:

  • Tabellen
  • Abfragen
  • Formulare
  • Berichte

Tabellen speichern die Daten. Abfragen wählen bestimmte Daten aus oder verändern sie. Sie können sich auf Daten aus mehreren Tabellen beziehen und die Kombination dann für Formulare oder Berichte zur Verfügung stellen. Formulare dienen als eine Art GUI für die Datenbank, mit deren Hilfe Sie die Daten in einer Tabelle anzeigen und editieren. Berichte liefern einen formatieren Output und dienen häufig zum Ausdrucken.

Abbildung 1 zeigt das Modell der Beispiel-Datenbank. Sie besteht aus vier Tabellen. Jede Tabelle beinhaltet eine Reihe von Einträgen, die Daten zur FIRMA, KONTAKT-Daten, geplante AUFGABEN sowie die Arbeitszeit in STUNDEN aufnehmen. Eine Reihe Beziehungen (so genannter Relationen) verbindet die Einträge: Jede Aufgabe ist zum Beispiel mit einer Firma verknüpft, für die die Dienstleistung erbracht wird, ebenso jeder Kontakt. Diese Struktur – die Verteilung der Aufgaben auf unterschiedliche Tabellen, die über ein gemeinsames Feld miteinander verknüpft sind – bildet die Realität korrekt ab: Es ist damit möglich, mehrere Aufgaben für eine Firma oder mehrere Kontakte zu einer Firma zu speichern. Diese sogenannten One-to-many-Beziehungen sind in Abbildung 1 mit einer "1" auf der Seite des eindeutigen Eintrags kennzeichnet. Die Gegenseite, die mehrere Einträge enthalten kann, ist mit einem "n" markiert. Für jede Tabelle muss ein primärer Schlüssel existieren (in Abbildung 1 gelb markiert). Eine Tabelle kann außerdem einen externen Schlüssel enthalten. Dabei handelt es sich um ein Feld, das auf den primären Schlüssel einer anderen Tabelle verweist.

Abbildung 1: Bevor Sie Base starten, sollten Sie die Struktur der Datenbank gut durchdenken. Eine Skizze verschafft den nötigen Überblick.

Tabellen anlegen

Nun ist es an der Zeit, die Struktur aus Abbildung 1 in eine Base-Datenbank umzusetzen. Wählen Sie dazu DateiNeuDatenbank. Erstellen Sie mit dem Datenbank-Assistenten eine neue Datenbank. Wenn Sie im Datenbank-Assistent auf Fertig stellen klicken, öffnet Base das Hauptfenster (Abbildung 2).

Abbildung 2: Vom Base-Hauptfenster aus erstellen und bearbeiten Sie alle Komponenten Ihrer Datenbank.

Erstellen Sie als erstes die Tabellen und legen Sie deren Felder fest (vergleiche Abbildung 1). Dazu wählen Sie Tabellen in der Spalte Datenbank und klicken auf die Option Tabelle in der Entwurfsansicht erstellen. Diese Option legt eine neue, leere Tabelle an, die zum Speichern der Aufgaben-Daten dient. Erstellen Sie nun ein Feld AufgabenID, indem Sie diese Bezeichnung in der Spalte Feldname eingeben; setzen Sie den Typ auf Integer [INTEGER]. Base bietet eine große Auswahl an Feldtypen. Zu den numerischen Typen zählen INTEGER (für Ganzzahlen) und FLOAT (für Fließkommazahlen). VARCHAR speichert Zeichenketten mit variabler Länge. Die maximale Länge können Sie in den Feldeigenschaften definieren. Datum [DATE] speichert ein Datum und Zeit [TIME] eine Uhrzeit. Um das Feld JobID als primären Schlüssel zu wählen, klicken Sie mit der rechten Maustaste auf das Eintragssymbol (das grüne Dreieck) und wählen Sie Primärschlüssel im Kontextmenü (Abbildung 3).

Ein Primärschlüssel muss zwei Bedingungen erfüllen: Er darf nicht leer sein, und jeder Wert darf nur einmal vorkommen. Nur dann ist es möglich, eindeutige Verknüpfungen herzustellen. Wählen Sie deshalb Ja aus der Dropdown-Liste Auto-Wert im Bereich Feldeigenschaften. Base fügt dann für die JobID beim Anlegen eines neuen Eintrags automatisch einen Wert ein, der um eins höher ist als der im vorhergehenden Feld.

Abbildung 3: Jede Tabelle benötigt einen primären Schlüssel, damit sie sich mit anderen Tabellen verknüpfen lässt.

Erstellen Sie weitere Felder in der Tabelle AUFGABEN und wählen Sie Feldtypen, die zum Inhalt der Felder passen – VARCHAR für Textfelder, [INTEGER] für ID-Felder und [DATE] für Datum und Uhrzeit. Bevor Sie die Tabelle speichern, stellen Sie sicher, dass das Datumsformat des Feldes Termin richtig konfiguriert ist: Klicken Sie auf den Button neben Format-Beispiel und wählen Sie ein Format, das Datum und Uhrzeit enthält (zum Beispiel 31.12.99 13:73). Speichern Sie die Tabelle (DateiSpeichern, oder [Strg]+[S]) und geben Sie AUFGABEN als Name für die Tabelle ein, sobald Base Sie dazu auffordert. Erstellen Sie nun die Tabellen STUNDEN, FIRMEN und KONTAKTE. Denken Sie daran, ein geeignetes Format für die Felder Datum ([DATE]), Stunden ([NUMERIC] mit zwei Nachkommastellen) und Preis ([NUMERIC] mit zwei Nachkommastellen) in der Tabelle STUNDEN zu wählen.

Nun stellen Sie die Beziehungen zwischen den Tabellen. Base beinhaltet ein grafisches Werkzeug, mit dem Sie die Relationen einfach mit der Maus festlegen können (Abbildung 4). Wählen Sie dazu ExtrasBeziehungen aus dem Menü und doppelklicken Sie auf alle vier Tabellen im Dialog Tabelle hinzufügen. Um eine Beziehung zwischen den Tabellen FIRMA und KONTAKTE zu definieren, ziehen Sie die Maus mit gedrückter Taste vom Feld FirmenID in der Tabelle FIRMA auf das Feld FirmenID in KONTAKE.

Abbildung 4: Base beinhaltet ein grafisches Werkzeug zum Definieren von Beziehungen zwischen Tabellen.

Nehmen wir an, Sie entschließen sich dazu, eine Firma aus der Datenbank zu entfernen. In diesem Fall muss Base wissen, was es mit den Kontaktdaten anfangen soll, die über die Beziehungen noch mit der Firma verknüpft sind. Normalerweise sollten diese Daten ebenfalls gelöscht werden. Doppelklicken Sie auf die Beziehung zwischen FIRMEN und KONTAKTE und wählen Sie in der Spalte Löschoptionen die Option Kask. löschen (Abbildung 5).

Mit den gleichen Schritten definieren Sie die Beziehungen zwischen den Tabellen FIRMEN und AUFGABEN. Stellen Sie die Löschoption für diese Beziehung auf Keine Aktion ein. Anderenfalls führt das Löschen einer Aufgabe automatisch zum Löschen der damit verknüpften Firma. Zum Schluss definieren Sie eine Beziehung zwischen den Tabellen AUFGABE und STUNDEN. Dabei setzen Sie die Löschoption wieder auf Kask. löschen. So stellen Sie sicher, dass beim Löschen einer Aufgabe keine verwaisten Zeiteinträge in der Datenbank übrig bleiben. Nachdem Sie alle benötigten Beziehungen definiert haben, speichern Sie diese und schließen Sie den Dialog Relationenentwurf (DateiSchließen).

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Datenbanken mit OpenOffice
    Was unter Windows Microsoft Access leistet, bietet unter Linux OpenOffice Base: ein komfortables grafischen Datenbank-Interface für Tabellen, Formulare und Abfragen.
  • Gut sortiert
    Ob Sammlungen, Kundenkarteien und Adressbücher – wer größere Datenmengen effizient verwalten will, kommt an einer Datenbank nicht vorbei. OpenOffice bietet dazu eine einfache, aber mächtige Anwendung.
  • Besser arbeiten mit OpenOffice
    Auch in dieser Ausgabe bieten wir Ihnen eine Auswahl von Tipps zu den Grundfunktionen des freien Büropakets an. Schwerpunktmäßig geht es um die Datenbank Base und die Textverarbeitung Writer. Auch ein paar Tipps zum Grafikmodul Draw haben wir zusammengestellt.
  • Geld verdienen im Fluge
    Erst in der Zusammenarbeit der einzelnen Programme zeigt OpenOffice seine wahre Stärke. Wir zeigen Ihnen am Beispiel einer Rechnungsdatenbank, wie diese Kooperation gewinnbringend funktioniert: Künftig verdienen Sie Ihr Geld dann wie im Fluge.
  • Workshop StarOffice Base, Teil 2
    In Ausgabe 09/2001 haben wir durch das Anlegen einer neuen Datenbank bereits den Grundstein für diesen zweiten Workshop-Teil gelegt. Auf diesen Daten aufbauend wollen wir nun etwas tiefer in StarOffice Base einsteigen und anschließend unsere CD-Datenbank um die Tabelle der verliehenen CDs erweitern.
Kommentare

Infos zur Publikation

LU 01/2015: E-Books im Griff

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 2 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...
ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.