BaseKapitel 1
Einführung in Base

Dokumentationen zu LibreOffice unter de.libreoffice.org

Copyright
Dieses Dokument unterliegt dem Copyright © 2012. Die Beitragenden sind unten aufgeführt. Sie
dürfen dieses Dokument unter den Bedingungen der GNU General Public License (http://www.gnu.org/licenses/gpl.html), Version 3 oder höher, oder der Creative Commons Attribution License(http://creativecommons.org/licenses/by/3.0/), Version 3.0 oder höher, verändern und/oderweitergeben.
Warennamen werden ohne Gewährleistung der freien Verwendbarkeit benutzt.
Fast alle Hardware- und Softwarebezeichnungen und weitere Stichworte und sonstige Angaben,
die in diesem Buch verwendet werden, sind als eingetragene Marken geschützt.
Da es nicht möglich ist, in allen Fällen zeitnah zu ermitteln, ob ein Markenschutz besteht, wird das
Symbol (R) in diesem Buch nicht verwendet.

Mitwirkende/Autoren
Robert Großkopf

Jost Lange

Michael Niedermair

Jochen Schiffers

Rückmeldung (Feedback)Kommentare oder Vorschläge zu diesem Dokument können Sie in deutscher Sprache an die
Adresse discuss@de.libreoffice.org senden.

Vorsicht

Alles, was an eine Mailingliste geschickt wird, inklusive der E-Mail-Adresse undanderer persönlicher Daten, die die E-Mail enthält, wird öffentlich archiviert und kannnicht gelöscht werden. Also, schreiben Sie mit Bedacht!

Datum der Veröffentlichung und Softwareversion
Veröffentlicht am 10.8.2013. Basierend auf der LibreOffice Version 4.1.

Anmerkung für Macintosh Nutzer
Einige Tastenbelegungen (Tastenkürzel) und Menüeinträge unterscheiden sich zwischen derMacintosh Version und denen für Windows- und Linux-Rechnern. Die unten stehende Tabelle gibt
Ihnen einige grundlegende Hinweise dazu. Eine ausführlichere Aufstellung dazu finden Sie in derHilfedatei des jeweiligen Moduls.

2Windows/Linux

entspricht am Mac

EffektMenü-Auswahl Extras →Optionen

LibreOffice →EinstellungenZugriff auf die Programmoptionen

Rechts-Klick

Control+Klick
ControlÖffnen eines Kontextmenüs

Ctrl (Control)oder Strg (Steuerung)⌘ (Command)

Tastenkürzel in Verbindung mit anderen
TastenF5Shift+⌘F5
Shift ⌘+F5

Öffnen des Dokumentnavigator-Dialogs

F11⌘+TTÖffnen des Formatvorlagen-Dialogs

Einführung in Base

Inhalt
Einführung ...................................................................................................................................... 4Base – ein Container für Datenbankinhalte .................................................................................... 4
Formulare – Start für die Dateneingabe ..................................................................................... 6Tabellen – Grundlagen für die Dateneingabe ............................................................................ 7
Abfragen – Auswertungsmöglichkeiten für eingegebene Daten ................................................. 9
Berichte – Präsentationen der Datenauswertung .................................................................... 103

Einführung
Im täglichen Büroeinsatz werden häufig Tabellenkalkulationen dazu benutzt, Datensammlungen zu
erstellen um anschließend damit eventuell noch kleine Berechnungen durchzuführen. DieTabellensicht ist sofort da, der Inhalt einfach einzugeben – da fragen sich dann viele Nutzer,
warum es denn eine Datenbank sein sollte. Dieses Handbuch versucht den Unterschied zwischen
Tabellenkalkulation und Datenbank herauszuarbeiten. Zu Beginn wird erst einmal kurz dargestellt,
was eine Datenbank denn überhaupt leisten kann.

HinweisIn der Fachsprache wird statt von Datenbanken von einer Benutzeroberfläche undeinem «Datenbanksystem» gesprochen. Dieser Begriff umfasst das«Datenbankmanagementsystem» (DBMS) und den eigentlichen Datenbestand, die«Datenbank».
Base hingegen bietet einen Zugriff auf verschiedene Datenbanksysteme über eine
grafische Benutzeroberfläche. Base arbeitet standardmäßig mit dem eingebetteten
Datenbanksystem «HSQLDB»

Das gesamte Handbuch bezieht sich, wie auch dieses erste Kapitel, in der Hauptsache auf zwei
Beispieldatenbanken. Die eine Datenbank hat die Bezeichnung «Medien_ohne_Makros.odb», dieandere Datenbank ist entsprechend mit Makros erweitert worden und trägt die Bezeichnung«Medien_mit_Makros.odb». Beide Datenbanken sollen einen Bibliotheksbetrieb ermöglichen:
Medienaufnahme, Nutzeraufnahme, Medienverleih und alles, was damit verbunden ist wie z. B.
das Anmahnen säumiger EntleiherInnen.
Zur Einführung in den Umgang mit Base ist das entsprechende Kapitel aus dem «Erste SchritteHandbuch» «Einführung in Base» gedacht.
Wie jede Software läuft auch LO-Base nicht vollkommen fehlerfrei. Besondersärgerlich sind hier die «Regressionen», also Rückschritte von einer vorhergehenden
Version zur gerade aktuellen Version. Der folgende Link führt zu den momentan
noch offenen Regressionen:

Hinweishttps://bugs.freedesktop.org/buglist.cgi?keywords=regression%2C&keywords_type=allwords&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=NEEDINFO&component=
Database&product=LibreOffice
Ein Blick auf die Bug-Liste kann also helfen, Unterschiede zwischen Dokumentation
und eigener Programmversion zu verstehen.

Base – ein Container für Datenbankinhalte
Eine Base-Datei ist eigentlich nur ein gepacktes Verzeichnis, in dem Informationen für dieverschiedenen Arbeitsbereiche von Base stecken. In der täglichen Nutzung startet eine Base-Datei
erst einmal mit der folgenden Ansicht:

4Einführung in BaseZur Arbeitsumgebung von Base gehören insgesamt vier Arbeitsbereiche: Tabellen, Abfragen,Formulare und Berichte. Je nach gewähltem Arbeitsbereich können bestimmte Aufgaben zur
Neuerstellung der Elemente in Angriff genommen werden oder entsprechen fertiggestellte
Elemente aufgerufen werden.
In den Arbeitsbereichen «Formulare» und «Berichte» können die jeweiligen Elemente auch
innerhalb einer Verzeichnisstruktur angeordnet werden:

Dies geht entweder direkt beim Abspeichern über den Speicherdialog oder durch Neugründung
von Verzeichnissen über Einfügen → Ordner.
Obwohl die Basis für eine Datenbank durch Tabellen gebildet wird, startet Base mit derFormularansicht, weil Formulare in der Regel die Elemente sind, mit denen die tägliche
Datenbankarbeit vonstatten geht. Über die Formulare werden Einträge in die Tabellenvorgenommen und Inhalte aus den Tabellen ausgewertet.

Base – ein Container für Datenbankinhalte5Formulare – Start für die Dateneingabe

Einfache Formulare bilden lediglich eine Tabelle wie im oben sichtbaren Tabellenkontrollfeld mit
den Namen ab. Dieses Formular erfüllt durch seine Struktur einige zusätzliche Punkte.

6•Die Auswahl der Personen kann mit Filtern eingeschränkt werden. Die einfache Eingabeder Buchstaben «G» erzeugt eine Auswahl aller Personen, deren Nachname mit «G»
beginnt.

••

Neue Mediennutzer können direkt in das Tabellenkontrollfeld eingegeben werden.
Die Ausleihdaten des aktuell markierten Nutzers werden in den darunterliegenden Feldernangezeigt. Dabei wird auch noch einmal der Name des Nutzers deutlich hervorgehoben.
Hat ein Nutzer ein Buch entliehen und müsste es bereits zurückgegeben werden, so steht
das Tabellenkontrollfeld «aktuelle Ausleihe» erst einmal nicht zur Verfügung. Stattdessen
wird angegeben, dass die Ausleihe zur Zeit gesperrt ist.

Einführung in Base•

Das Entleihdatum wird mit dem aktuellen Datum vorgegeben. In dem daneben stehenden
Listenfeld werden die zu entleihenden Medien ausgewählt. Dabei können keine Medien
ausgewählt werden, die zur Zeit noch entliehen sind.

•Die ausgewählten Daten werden mit dem Button Aktualisieren in das Tabellenkontrollfeld
für den aktuellen Ausleihvorgang übernommen.

•Im Tabellenkontrollfeld für die Rückgabe ist es nicht möglich, einen Datensatz einfach zulöschen. Nur die Felder «Rück-Datum» und «Verlängerung» können bearbeitet werden.
War ein Mediennutzer vorübergehend gesperrt und hat seine entliehenen Medien
zurückgegeben, so lässt sich die Ausleihe über den Button Aktualisieren wieder
freischalten.

Alle diese Funktionen können ohne den Einsatz von zusätzlicher Programmierung mit Makros
gewährleistet werden, wenn entsprechend an den Formularen gefeilt wird.

Tabellen – Grundlagen für die Dateneingabe
Die Tabellen in einer Datenbank hängen in einem großen Geflecht zusammen. Eine Tabelle
bezieht Informationen aus einer anderen oder gibt Informationen an andere Tabellen weiter. Dies
wird als «Relation» bezeichnet.
Die Tabelle "Ausleihe" steht in direkter Beziehung zu den Tabellen "Medien" und "Leser".

Statt in der Ausleihe den Titel eines Buches abzuspeichern, wird dort nur eine Zahl abgespeichert.
Das eindeutige Kennzeichen eines Datensatzes der Tabelle "Medien" ist in dem Feld "ID"gespeichert. Das Feld ist das Schlüsselfeld der Tabelle "Medien", der Primärschlüssel.
In der Tabelle "Ausleihe" wird auch nicht jedes Mal der Lesername eingetragen. Hier gibt dieTabelle "Leser" Auskunft. Auch sie hat ein Primärschlüsselfeld. Der Wert dieses Feldes kann dannin die Tabelle "Ausleihe" eingetragen werden.
Die Beziehungen zwischen den Tabellen haben hier den Vorteil, dass die Schreibarbeit imFormular erheblich reduziert wird. Statt bei jeder Ausleihe ein Medium zumindest unverwechselbar
und für jeden erkennbar aufzuschreiben und Leser mit Vor- und Nachnamen zu notieren, wird
einfach im Inhalt der anderen Tabellen nachgesehen. Schließlich wird dasselbe Medium später
noch öfter ausgeliehen und derselbe Leser kann schon beim ersten Entleihvorgang mehrere
Medien entleihen.

Base – ein Container für Datenbankinhalte

7

Die Tabellengrundlage für das oben vorgestellte Formular sieht erst einmal recht nüchtern aus. Inder oben abgebildeten Tabelle werden bis auf die Nutzerneueingabe alle Eingaben gemacht, die indem Formular möglich sind. Dabei werden im Formular die Verbindungen dieser Tabelle zu den
anderen Tabellen der Datenbank genutzt.

8•

Das erste Feld zeigt den für die meisten Datenbanken unabdingbaren, unverwechselbaren
Inhalt, den Primärschlüssel ("ID"), der automatisch geschrieben wird.
Mehr dazu im Kapitel «Beziehungen zwischen Tabellen allgemein».

•

Das zweite Feld "Medien_ID" speichert den Primärschlüssel der Tabelle "Medien". Esverweist über die Nummer auf den entsprechenden Inhalt in dieser Tabelle. Solch ein
Verweis auf einen Primärschlüssel wird als Fremdschlüssel bezeichnet. Im Formularwerden statt des Fremdschlüssels über ein Listenfeld der Fremdschlüssel, der Titel und derVerfasser angezeigt. Das Listenfeld gibt im Hintergrund den Fremdschlüssel an die Tabelle
weiter.

•Das dritte Feld "Leser_ID" speichert den Primärschlüssel der Tabelle "Leser", also nur eine
Nummer, die auf den Leser verweist. Im Formular wird aber der Nachname und derVorname angegeben. Wie in der Tabelle zu sehen ist, hat der Leser mit derPrimärschlüsselnummer '0' sehr viele Medien entliehen. Die Tabelle kann beliebig oft deneinzigartigen Primärschlüssel der Tabelle "Leser" als Fremdschlüssel "Leser_ID"
abspeichern. Auf keinen Fall darf aber ein Leser, der in dieser Tabelle über den
Fremdschlüssel verzeichnet ist, gelöscht werden. Sonst wäre nicht mehr nachvollziehbar,
wer denn nun das jeweilige Medium entliehen hat. Die Datenbank macht in den
Standardeinstellungen so ein Löschen unmöglich. Der Fachbegriff dafür ist die Gewährungder «referentiellen Integrität».

•

Im dritten Feld wird das Ausleihdatum abgespeichert. Ist dieses Datum abgespeichert undentspricht das Datum nicht dem aktuellen Datum, so erscheint der entsprechende
Einführung in Base

Datensatz zu dem entsprechenden Leser im Formular im untersten Tabellenkontrollfeld zu
Rückgabe der Medien.

•Im letzten Feld wird eine Verlängerung ermöglicht. Was hier eine 1, 2 usw. bedeutet wird ananderer Stelle festgelegt. Dafür enthält die Datenbank eine gesonderte Tabelle mit derBezeichnung "Einstellungen".

Diese Eingaben reichen aus, um letztlich einen Bibliotheksbetrieb in Gang zu halten.

Abfragen – Auswertungsmöglichkeiten für eingegebene Daten
Abfragen zeigen eine Sicht auf die Tabellen. Sie bringen Inhalte mehrerer Tabellen zusammen ineiner Übersicht. Abfragen werden nur in der Abfragesprache «SQL» gespeichert. Sie sind alsokeine neuen Tabellen, auch wenn sie von der Ansicht her in Base erst einmal gleich erscheinen

Diese Abfrage listet alle Medien auf, die zur Zeit entliehen sind. Darüber hinaus berechnet sie, wie
lange die Medien bereits entliehen sind und wie lange sie noch entliehen werden dürfen. Während
das Feld "Medien_ID" das Fremdschlüsselfeld ausliest, wird in dem Feld "Medium" aus demPrimärschlüssel, dem Titel und dem Autor des Mediums ein zusammenhängender Text gebildet.
Dieses Feld wird dann im Formular unter dem Untertitel «Rückgabe» benötigt. Einige Felder derAbfrage dienen dabei als Verbindungsfelder zu dem eigentlichen Ausleihformular mit der Tabelle"Ausleihe", nämlich die Felder "Medien_ID" und "Leser_ID".

•Alle Medien, bei denen das Rückgabedatum in der Tabelle "Ausleihe" nicht ausgefüllt ist,werden aufgelistet. Die Medien sind hier als zusätzliche Übersicht auch noch entsprechendbenannt.

••

Der Bezug zu den Lesern ist hergestellt über den Primärschlüssel der Tabelle "Leser"•

Von der Ausleihzeit, die je nach Medienart unterschiedlich sein kann, wird die Leihzeit
abgezogen. Daraus wird die verbleibende Restzeit gebildet.

•Bei einer Verlängerung wurde in der Tabelle "Einstellungen" vermerkt, dass der Wert '1' füreine Verlängerung von 7 Tagen steht. Im vorletzten Datensatz mit der "Medien_ID" '2' ist soeine Verlängerung bei der Restzeit berücksichtigt worden.

Aus dem Ausleihdatum "Leih_Datum" und dem aktuellen Datum wird die Zeitdifferenz inTagen als "Leihzeit" angegeben.

Base – ein Container für Datenbankinhalte

9Berichte – Präsentationen der DatenauswertungÜber Berichte werden die Daten so aufbereitet, dass sie sinnvoll ausgedruckt werden können.
Formulare wie das folgende sind nicht dazu geeignet, z.B. sauber formatierten Brief auszugeben.

Bevor ein aktueller Bericht in Form einer Mahnung ausgedruckt werden kann müssen in diesem
Formular erst einmal die Mahnungen bestätigt werden. Im oberen Tabellenkontrollfeld stehen dafüralle Namen der Leser, die ein Medium entliehen haben und für die eine negative Restzeit
vermerkt ist.
Für jedes anzumahnende Buch wird im unteren Tabellenkontrollfeld ein Mahndatum festgelegt.
Dies dürfte bei der Abarbeitung von Mahnungen das aktuelle Datum sein. Die Mahnungsnummer
wird nicht extra geschrieben. Sie wird anhand der bisher ergangenen Mahnungen einfach durch
Addition ermittelt.
Dieses Formular benötigt in der Fassung ohne Makros noch eine Eingabe durch den Nutzer. In derFassung, die mit Makros arbeitet, wird einfach das Datum automatisch geschrieben undanschließend der Bericht zum Mahnungsdruck aufgerufen.

10Einführung in Base

Mit Hilfe einer Abfrage lässt sich aus den getätigten Eingaben solch eine Mahnung zum Ausdruck
fertig erstellen. Der Nutzer der Datenbank braucht dazu lediglich bei den Berichten den Bericht
Mahnung auszuwählen und kann dann einen entsprechenden Mahnbrief an alle die Personen
schicken, bei denen im vorher angegebenen Formular eine Mahnung bearbeitet wurde.
In so einem Bericht stehen also gegebenenfalls auf den folgenden Seiten jeweils auf einer Seite
weitere Mahnungen für andere Personen. Sollte ein Leser so viele Medien entliehen haben, dass
der Platz auf einer Seite nicht ausreicht, so wird die Tabelle auf der Folgeseite einfach fortgesetzt.
Ein so erstellter Bericht ist also umfangreicher als ein Serienbrief, der mit Writer erstellt wird: erstellt automatisch alle Datensätze zusammen, die gedruckt werden sollen und ordnet den
zusätzlichen Text entsprechend an.

Base – ein Container für Datenbankinhalte

11