Base ist in der Lage, mit allen möglichen Datenbanken zusammenzuarbeiten, verwendet aber auch eine interne Datenbank namens HSQLDB und benötigt dann nicht die Installation einer weiteren Datenbank.
Base benötigt als einzige Office-Komponente eine Java-Runtime-Umgebung (JRE), zumindest in der Windows-Version. Bei den anderen Plattformen dürfte eine JRE von Haus aus installiert sein.
Datenbank
Base organsiert Daten einer Datenbank. Darum ist für die Benutzung von Base ein grundlegendes Verständnis von relationalen Datenbanken wünschenswert. Hier eine Zusammenfassung:- Eine Datenbank besteht aus Tabellen.
- Eine Tabelle besteht aus Zeilen. Das sind die Einträge in der Tabelle, auch Datensatz genannt.
- Die Spalten bezeichnen die Felder der Datensätze. Eine Spalte hat einen Bezeichner, einen Typ und ggf. eine Größenangabe.
- Die Kreuzung aus Spalte und Zeile ist ein Datenfeld.
Start
Nach dem Start von Base erscheint eine Dialogbox, die erfragt, mit welcher Datenbank gearbeitet werden soll. Dieser Dialog erscheint nicht, wenn Base durch das Doppelklicken einer vorher angelegten Base-Datei gestartet wird.
Der Dialog ermöglicht eine neue Datenbank zu erstellen, eine Base-Datei zu öffnen oder eine Verbindung zu einer bestehenden Datenbank aufzubauen.
- Sie wählen Eine neue Datenbank erstellen. Auf den meisten Systemen ist die eingebettete HSQLDB die einzige Möglichkeit.
- Bestehende Datenbankdatei, wenn Sie vorher schon einmal eine Base-Datei erstellt haben. Dann erhalten Sie über den Button Öffnen eine Dateiauswahlbox, um diese zu suchen.
- Sie können aber auch eine Verbindung zu einer bestehenden Datenbank herstellen, wenn Sie auf eine laufende Datenbank zugreifen wollen. Dazu wird JDBC verwendet.
In der linken Spalte sehen Sie die Fähigkeiten, die Base Ihnen zur Verfügung stellt:
- In den Tabellen werden die Daten organisiert. Es können neue Tabellen erstellt werden, die Relationen definiert werden und die Tabellen von Hand gefüllt werden.
- Mit Abfragen können Sie Informationen aus ihren Daten herausfiltern. Eine Abfrage stellt selbst eine dynamische Tabelle dar, auf deren Basis auch Formulare und Berichte erstellt werden können.
- Formulare stellen Eingabemasken, um Daten zu erfassen oder einzeln anzuzeigen.
- Berichte erstellen Listen, die Übersichten über die Daten liefern.
Tabellen erstellen
Klicken Sie in der Liste Datenbank auf das Symbol Tabelle.Unter Aufgaben finden Sie den Link Tabellen in der Entwurfsansicht erstellen.
Es öffnet sich ein Dialog, in dem Sie eine Tabelle definieren können. Für unser Beispiel erstellen wir drei Tabellen.
- Gast: Hier werden die Gäste erfasst.
- Wohnung: Name und Preis der zur Verfügung stehenden Wohnungen
- Buchung: Die Beziehung zwischen Gast und Wohnung entsteht durch eine Buchung. Hier werden neben den IDs die Dauer der Buchung und der Preis der Buchung gespeichert.
Die Tabelle Gast wird so definiert:
id | Integer | Auto-Wert: Ja |
Name | Text (VARCHAR) | |
Adresse | Text (VARCHAR) | |
Text (VARCHAR) |
Die Tabelle Wohnung wird so definiert:
id | Integer | Auto-Wert: Ja |
Bezeichner | Text (VARCHAR) | |
Preis | Dezimal (DECIMAL) | 2 Nachkommastellen |
Die Tabelle Buchung wird so definiert:
id | Integer | Auto-Wert: Ja |
gastid | Integer | |
wohnungid | Integer | |
von | Datum (DATE) | |
bis | Datum (DATE) | |
Preis | Dezimal (DECIMAL) | 2 Nachkommastellen |
Beziehungen zwischen den Tabellen definieren
Die Beziehungen zwischen den Tabellen werden durch Fremdschlüssel realisiert. Beispielsweise kann ein Gast mehrere Buchungen haben, aber für jede Buchung liegt nur ein Gast vor. Dies nennt man eine 1:n-Beziehung. Ähnliches gilt für die Beziehung zwischen Wohnung und Buchung.- Im Bereich Datenbank muss Tabellen angewählt sein.
- Im Menü wird Extras|Beziehungen angeklickt. Es erscheint ein Dialog.
In der Dialogbox tauchen alle Tabellen auf. Sie können markiert und mit Hinzufügen in das Hauptfeld gebracht werden.
Anschließend wird der Dialog mit Schließen beendet. Im Fenster sind die drei Tabellen vorhanden. Am übersichtlichsten ist es, wenn man die Tabelle Buchung in die Mitte stellt. Nun stellt man die Beziehungen her.
- Von Gast das Element id nach Buchung gastid mit der Maus ziehen.
- Von Wohnung das Element id nach Buchung wohnungid mit der Maus ziehen.
Damit sind die 1:n-Beziehungen hergestellt. Das Fenster kann gespeichert und geschlossen werden.
Abfragen (Query)
Eine Abfrage ist eine Liste von Feldern, die aus einer Tabelle oder auch über mehrere Tabellen hinweg erstellt wird.Abfrage in der Entwurfsansicht erstellen
- Sie klicken in der linken Spalte Datenbank auf das Symbol Abfragen.
- Nun erscheinen drei Links unter Aufgaben.
- Klicken Sie auf den Link Abfrage in der Entwurfsansicht erstellen.
- Es erscheint ein Dialog der die Tabellen auflistet. Sie können jede einzeln hinzufügen. Wir wollen alle drei Tabellen verwenden, weil wir eine Belegungsliste erzeugen wollen.
- Wenn dieser Dialog beendet ist, erscheint das folgende Fenster.
Im oberen Bereich sind die Tabellen sichtbar, im unteren werden die Spalten aufgezählt, die aus der Abfrage hervorgehen sollen.
Beim Anklicken des Feldes erscheint eine Dropdown-Liste mit möglichen Spalten aus den oben aufgeführten Tabellen. Es kann die Sortierung und ein Kriterium erstellt werden.
Abfrage mit Assistent erstellen
Mit dem Assistenten (Wizzard, ist es am einfachsten, ein Formular zu gestalten.- Sie klicken in der linken Spalte Datenbank auf das Symbol Abfragen.
- Nun erscheinen drei Links unter Aufgaben.
- Klicken Sie auf den Link Abfrage unter Verwendung des Assistenten erstellen.
- Feldauswahl (Field): Die Spalten werden nacheinander ausgewählt. Dazu kann in jedem Schritt ausgewählt werden, aus welcher Tabelle oder Abfrage die Spalte kommen soll.
- Sortierung (Sorting): Hier werden die Spalten angegeben, nach denen die Sortierung erfolgen soll.
- Suche (Search): Hier wird die Selektion definiert, also welche Zeilen gezeigt werden sollen.
- Detail or summary: Sollen alle Zeilen angezeigt werden, oder eine Zusammenfassung als Summe, Durchschnitt oder Anzahl.
Abfrage in SQL-Ansicht erstellen
Sie können eine Abfrage auch klassisch als SQL-SELECT-Anweisung formulieren. Beispielsweise könnte die folgende Abfrage eine Belegungsliste erzeugen:SELECT Buchung.von, Buchung.bis, Wohnung.Bezeichner, Gast.Name FROM Buchung, Wohnung, Gast WHERE gastid = Gast.id AND wohnungid = Wohnung.id
Base meldet beim Ausprobieren der Anfrage Schritt für Schritt, welcher Bezeichner ihm nicht gefällt.
Eingabe mit Formularen
Datenbank: Formulare anwählenAufgaben: Formular unter Verwendung des Assistenten erstellen.
- Table: in der Klappbos auf Gast einstellen
- Nun werden unter den Available Fields alle Spalten von Gast aufgeführt und werden auf die rechte Seite unter Fields in the form gebracht.
- Finish
Berichte
Berichte können auf der Basis von Tabellen oder Abfragen erstellt werden. Für die Belegungsliste mit Anreise, Abreise, Wohnung und Gast muss also erst eine Abfrage erstellt werden, weil die Referenzen direkt nicht aufgelöst werden können.Der Berichts-Assistent geht in folgenden Schritten vor:
- Feldauswahl: Hier kann aus der Klappbox die Abfrage (Query) oder Tabelle gewählt werden. Daraus ergibt sich die Liste der verfügbaren Feldern, aus denen diejenigen ausgewählt werden, die im Bericht erscheinen sollen (Fields in report).
- Label: Hier werden die Überschriften eingetragen, etwa Anreise für das Feld von.
- Grouping: Hier können Elemente mit gleichem Inhalt zusammengefasst werden. Beispielsweise bei einem Namenswechsel wird ein Abstand eingefügt.
- Sort: Hier wird angegeben, in welcher Reihenfolge die Sätze angezeigt werden, beispielsweise nach Anreisetag.
- Layout: Umrahmung oder Schrift, Portrait oder Landscape
- Erzeugen: Hier kann der Bericht einen Namen erhalten.