AA_PO-22135-123RF-Dmitry_Naumov_123RF-Spion.jpg

© Dmitry Naumov, 123RF

LibreOffice Base

Wer sucht…

Eine Datenbank ohne Suche ist wie ein Auto ohne Motor: Schick anzusehen, aber zu nichts zu gebrauchen. Deswegen widmet sich der zweite Teil unseres Base-Einstiegs dem Implementieren einer Suchfunktion.

Der erste Teil unserer kleinen Serie erläuterte, wie Sie eine Bilddatenbank mit komfortabler Eingabemaske und einem Tagging-System (Abbildung 1) erstellen. Dabei löst Base [1] seinen Anspruch, Datenbankprogrammierung per Mausklick und ohne Kenntnisse in SQL zu ermöglichen, unbeschränkt ein: Assistenten und ein grafischer Abfrage-Editor erledigen die Arbeit und ermöglichen auch Anwendern ohne Programmiererfahrung das Erstellen einer Datenbank.

Abbildung 1: Aus drei Tabellen, einer Abfrage und einem Eingabeformular entstand im vorigen Teil dieses Artikels eine Bilddatenbank, der bislang noch eine Suchfunktion fehlt.

Doch der Base-Anwendung aus dem ersten Teil (bilddatenbank_teil_1.odb auf der Heft-DVD) fehlt noch ein wichtiges Feature: die Suchfunktion (Abbildung 2). Bei dieser Aufgabe müssen die grafischen Helfer in Base jedoch die Waffen strecken – hier geht es ohne Handarbeit nicht weiter.

Abbildung 2: Niemand möchte durch alle Datensätze blättern, um ein bestimmtes Bild zu finden. Die Titelsuche oben im Formular schafft Abhilfe.

Handarbeit

Eine Abfrage, die zu einem per Formular eingegebenen Suchbegriff passende Datensätze herausfiltert, lässt sich nicht mit dem grafischen Editor erzeugen. Sie setzt handgeschriebenen SQL-Code voraus, wie ihn Programmierer zur Kommunikation mit Datenbanken nutzen – erfreulicherweise jedoch nur in homöopathischer Dosierung.

Die für Programmierer triviale Aufgabe, einen vom Benutzer eingegebenen Suchbegriff in eine ansonsten feststehende Abfrage einzufügen, lässt sich in Base nur über ein Hintertürchen umsetzen. Abbildung 3 verbildlicht, wie das funktioniert: Die Tabelle Filter (blau) enthält nur einen Datensatz mit einem Suchbegriff – in unserem Beispiel der Titel.

Abbildung 3: Eine Unterabfrage (blauer Text) liefert der Hauptabfrage (schwarzer Text) den Titel-Wert des einzigen Datensatzes der Tabelle Filter. Ein Unterformular, das auf Filter zugreift, verändert diesen Wert, und stößt damit eine Suche nach dem passenden Titel an.

Den in Filter gespeicherten Titel verändert ein Unterformular – ähnlich dem im ersten Teil erläuterten Kategorien-Unterformular. Die Suchabfrage (rot) vergleicht den Filter-Titel mit den Titel-Feldern in der Tabelle Bilder (gelb) und gibt nur jene Datensätze zurück, für die beide übereinstimmen.

Abbildung 2 zeigt eine erweiterte Version des Formulars Bilder: Oben sehen Sie blau hinterlegt die Filterfunktion, die nach Bildern mit einem bestimmten Titel sucht. Bleibt das Filterfeld leer, blättern Sie wie gehabt im Hauptformular durch alle Datensätze. Nach Eingabe eines Suchbegriffs erscheinen aber nur noch Datensätze, die zum Suchbegriff passen.

Datenpuffer

Um an Bekanntes anzuknüpfen, erstellen Sie zuerst eine Tabelle mit dem Feldnamen Titel, die den wechselnden Suchbegriff aufnimmt. Gestatten Sie es Base, der Tabelle automatisch einen Primärschlüssel hinzuzufügen, sonst lässt sich deren Inhalt nicht per Formular verändern.

Als Nächstes benötigten Sie ein weiteres Formular, das auf die eben erstellte Tabelle Filter zugreift. Öffnen Sie dazu den Formular-Navigator und erstellen Sie per Rechtsklick auf Formulare das neue Formular Filter. Da dieses Formular die Datenanzeige im bisherigen Hauptformular steuert, ziehen Sie mainForm auf Filter und ordnen es ihm damit unter.

Als Nächstes kümmern Sie sich um die Bindung des Filter-Formulars an die gleichnamige Tabelle. Öffnen Sie dazu mithilfe des Buttons Formular in der linken Schalterleiste (vierter von oben) die Einstellungspalette des Formulars.

Abbildung 4 zeigt die erforderlichen Einstellungen für den Reiter Daten. Neben der Auswahl der Tabelle fällt die auf aktueller Datensatz gesetzte Einstellung Zyklus auf. Sie bewirkt, dass Sie über das Formular keine neuen Datensätze eingeben, sondern nur einen bestehenden verändern. Es darf schließlich immer nur einen aktuell gültigen Suchbegriff geben.

Abbildung 4: Der Zyklus Aktueller Datensatz beschränkt die Dateneingabe eines Formulars auf den aktuellen Datensatz.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • 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.
  • Einstieg in LibreOffice Base
    Datenbankanwendungen über Assistenten und grafische Editoren per Mausklick erstellen – ganz ohne SQL und Programmierung: Das verspricht das LibreOffice-Programm Base nach dem Vorbild von Microsoft Access.
  • 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.
  • Tipps und Tricks zu OpenOffice
    In dieser Ausgabe erfahren Sie, wie Sie mit OpenOffice Calc auf Datenbanken zugreifen. Außerdem geht es um Pivot-Tabellen, die in OpenOffice Datenpilot-Tabellen heißen. Und am Ende spielen wir – mit Hilfe einer Wenn-Funktion – ein Nullsummenspiel mit Ihnen.
  • Datenbanken mit Rekall
    Wer schielt da neidisch auf MS Access? Mit Rekall lassen sich PostgreSQL- und MySQL-Datenbanken einfach verwalten.
Kommentare

Infos zur Publikation

LU 12/2017: Perfekte Videos

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

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

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

Stellenmarkt

Aktuelle Fragen

Huawei
Pit Hampelmann, 13.12.2017 11:35, 2 Antworten
Welches Smartphone ist für euch momentan das beste? Sehe ja die Huawei gerade ganz weit vorne. Bi...
Fernstudium Informatik
Joe Cole, 12.12.2017 10:36, 2 Antworten
Hallo! habe früher als ich 13 Jahre angefangen mit HTML und später Java zu programmieren. Weit...
Installation Linux mint auf stick
Reiner Schulz, 10.12.2017 17:34, 3 Antworten
Hallo, ich hab ein ISO-image mit Linux Mint auf einem Stick untergebracht Jetzt kann ich auch...
Canon Maxify 2750 oder ähnlicher Drucker
Hannes Richert, 05.12.2017 20:14, 4 Antworten
Hallo, leider hat Canon mich weiterverwiesen, weil sie Linux nicht supporten.. deshalb hier die...
Ubuntu Server
Steffen Seidler, 05.12.2017 12:10, 1 Antworten
Hallo! Hat jemand eine gute Anleitung für mich, wie ich Ubuntu Server einrichte? Habe bisher...