billard.jpg

© photocase.de

Schön sortiert

Datenbanken bearbeiten unter KDE

01.02.2005
Knoda ist ein leicht zu bedienendes KDE-Programm, welches die Handhabung von Datenbanken auch Benutzern erschließt. Im zweiten Teil unseres Workshops zeigen wir Ihnen, wie Sie mit dem KDE-Programm Formulare erstellen und Berichte drucken.

Nachdem Sie im vorhergehenden Workshop auf die Schnelle gelernt haben, wie Sie in Knoda Abfragen über mehrere Tabellen erstellen, geht dieser Teil des Workshops auf das Anlegen von Tabellen, Formularen und Berichten ein. Die zughörige Sqlite2-Datenbank finden Sie wiederum auf der Heft-CD im Verzeichnis LinuxUser/knoda/. Ebenfalls auf der Heft-CD befindet sich Teil 1 des Knoda-Workshops im HTML-Format.

Der Workshop beschreibt das Vorgehen anhand des Sqlite2-Treibers. Er ist aber grundsätzlich auch mit anderen Datenbanken nachvollziebar. Wie Sie Knoda zum Beispiel mit Mysql zusammen benutzen, lesen Sie in Kasten 1. Vorsicht für Benutzer von Suse Linux 9.1: falls Sie KDE von der Heft-CD auf die Version 3.3.2 aufgefrischt haben, hat Yast vermutlich ältere Knoda-Pakete installiert. Sie müssen deshalb die Pakete von der Heft-CD 2005/01 wieder nachinstallieren.

Kasten 1: Knoda und Mysql

Knoda kommt nicht nur mit Sqlite, sondern auch mit den Datenbanken Mysql und Postgresql zurecht. Über eine allgemeine ODBC-Schnittstelle ist zusätzlich auch der Zugriff auf jede SQL-kompatible Datenbank möglich. Damit Knoda diese Datenbanken erkennt, müssen beim Kompilieren von hk_classes die Devel-Pakete der entsprechenden Datenbank installiert sein. Nur so kann Hk_classes die benötigten Datenbanktreiber kompilieren. Für Mysql benötigen Sie das Paket mysql-devel, für Postgres Postgres-devel, etc. Die Knoda-Pakete auf der Heft-CD 2005/01 beinhalten sämtliche, von Knoda unterstützte Datenbanktreiber.

Bei erfolgreicher Kompilation von Hk_classes und Knoda sehen Sie im Treiberauswahldialog, für welche Datenbanken Hk_classes die benötigten Devel-Pakete fand. Hier sollten Sie auch einen Eintrag für Mysql sehen. Starten Sie nun die Mysql-Datenbank als root mit dem Befehl

/etc/init.d/mysql start

Als Ausgabe sollten Sie mindestens eine Zeile mit Done oder OK am Ende sehen. Suse Linux weist Sie zudem auch darauf hin, dass Sie für den Mysql-Benutzer root ein Passwort einstellen sollten. Das erledigen Sie mit dem Befehl mysqladmin -u root password Neues_Paswort. Stellen Sie kein Passwort ein, können Sie sich ohne Passwortangabe am Mysql-Server anmelden. Wählen Sie dazu im Treiberauswahl-Dialogfenster von Knoda den Eintrag MySQL aus. Dann geben Sie im nächsten Dialog unter User: root an und klicken auf OK. Um mit Knoda auf einen entfernten Mysql-Server zuzugreifen müssen Sie unter Host: die IP-Adresse oder den Rechnernamen des Mysql-Servers angeben. In der Regel müssen Sie dann auch einen Benutzernamen und das dazugehörige Passwort kennen.

Datenbank anlegen

Starten Sie Knoda und wählen Sie im Treiberdialog den Sqlite2-Treiber aus. Wählen Sie nun Datei | Neu | Datenbank und geben Sie der Datenbank einen Namen. Der Datenbank-Eintrag sollte jetzt unter Aktuelle Datenbank: aufgelistet sein. Trifft dies nicht zu, müssen Sie zunächst die neu angelegte Datenbank über die Aufklappliste anwählen. Um in der neuen Datenbank eine erste Tabelle zu erstellen klicken Sie mit der rechten Maustaste auf den Eintrag Tabellen, und wählen dann Neu. Alternativ dazu benutzen Sie Datei | Neu | Tabelle aus dem Hauptmenü.

Abbildung 1: Jetzt kann's losgehen: neue Tabelle in Knoda erstellen.

Auf dem Reiter Tabelle - keinName klicken Sie nun auf Neues Feld, um der Tabelle Spalten (Felder) hinzuzufügen. Alle Feldtypen im Detail zu beschreiben, würde den Rahmen dieses Workshops sprengen. Im Normalfall kommen Sie mit Text, Ganzzahl und Fließkommazahl schon sehr weit. Der Typ Logisch ist für Ja/Nein- respektive Wahr/Falsch-Einträge gedacht. Bei Mysql und Postgres kann das Feld auch drei Zustände festhalten (zum Beispiel Ja, Nein, weiß nicht).

Für diesen Workshop erstellen wir eine Datenbank für die Mitgliederverwaltung des lokalen Schützenvereins. Fügen Sie dazu die in Tabelle 1 aufgelisteten Felder der ersten Tabelle hinzu. Beginnen Sie bei ID. Da das Feld einen automatischen Zähler enthält, darf es nicht Null sein. Das Feld soll auch der Primärindex sein. Nach dem Hinzufügen der Felder wählen Sie Ändere Tabelle, und speichern dann die Tabelle unter dem Namen Schützen. Bitte beachten Sie, dass Sqlite nachträglich keine Änderungen an der Tabellenstruktur mehr zulässt. Überprüfen Sie deshalb vor dem Speichern, ob alle Felder in Ordnung sind.

In einer zweiten Tabelle mit dem Namen Kategorien führen Sie dann die verschiedenen Kategorien (zum Beispiel Jungschütze, Aktiv, Senior etc), in einer dritten die verschiedenen Waffen (Karabiner, Sturmgewehr, Pistole, etc) auf. Speichern Sie die dritte Tabelle unter dem Namen Waffen. Diese zwei Tabellen enthalten jeweils zwei Spalten. Eine Spalte für die ID, eine für die Kategorie/Waffe.

Tabelle 1: Beispieltabelle Schützenverein.

Feldname Feldtyp
ID Autozähler
Name Text
Vorname Text
Straße Text
PLZ Ganzzahl (klein)
Ort Text
Kategorie Ganzzahl (klein)
Jahresbeitrag Fließkomma (klein)
Bezahlt Logisch
Waffe Ganzzahl (klein)

Formulare erleichtern das Leben

Wie schon in Teil 1 erwähnt kennt Knoda für jedes Element zwei Modi. Um die neuen Tabellen mit Daten zu füllen wechseln Sie einfach in den Anzeigemodus und tragen dann die Daten wie in einer Tabellenkalkulation ein. Gerade für die Haupttabelle ist es allerdings viel bequemer, ein passendes Formular zu erstellen. Im Formular lassen sich dann die drei Tabellen verknüpfen. Sie müssen also bei der Kategorie nicht wissen, welche ID für welche Kategorie steht, sondern wählen dann einfach den entsprechenden Eintrag aus einem Ausklappmenü aus.

Klicken Sie zum Erstellen eines neuen Formulars mit der rechten Maustaste auf den Eintrag Formulare. Alternativ wählen Sie Datei | Neu | Formular aus dem Hauptmenü. Im Formular-Designer (siehe Abbildung 2) müssen Sie zunächst eine Datenquelle auswählen. Klicken Sie dazu auf das Symbol mit den drei Punkten hinter der Aufklappliste Datenquelle. Wählen Sie hier nacheinander die drei erstellten Tabellen aus und fügen Sie sie als Datenquelle hinzu. Wählen Sie dann aus der Aufklappliste die Tabelle Schützen aus.

Abbildung 2: Eben noch im Formular-Designer von Knoda…

Beim Starten des Formular-Designers erweitert sich die Werkzeugleiste von Knoda automatisch um die benötigten Elemente zum Zeichnen von Formularen. Um die Funktion der einzelnen Symbole zu ermitteln, halten Sie die Maustaste für einen Augenblick über das jeweilige Icon. Knoda zeigt dann eine kurze Erklärung an. Wählen Sie aus der Werkzeugleiste den Eintrag Editierfeld und klicken Sie dann auf das (noch leere) Formular. Knoda fügt daraufhin ein erstes Formularfeld ein. Sie müssen nun für dieses Feld bestimmen, welche Daten es enthalten soll, und wie Sie es formatieren möchten. Dies erledigen Sie auf den Reitern Daten, Format, Rahmen und Aktionen. Wählen Sie für das erste Feld als Datenquelle die Tabelle Schützen und das Feld Name aus. Fügen Sie dann auf die selbe Art und Weise auch die übrigen Felder hinzu, mit Ausnahme von Kategorie, Waffe und Bezahlt. Um Ihr Formular zu testen, wechseln Sie einfach in den Anzeigemodus.

Beim Feld Bezahlt handelt es sich um ein logisches Feld. Entweder ein Mitglied hat seinen Jahresbeitrag bezahlt oder nicht. Wählen Sie für dieses Feld aus der Werkzeugleiste das Symbol Boolsches Feld aus und verknüpfen Sie es mit dem entsprechenden Feld der Tabelle Schützen. Damit Sie auch wissen, wofür die Checkbox im Formular steht, tragen Sie unter Label: ein: Mitgliederbeitrag bezahlt.

Für die Felder Kategorie und Waffen wählen Sie das Combobox Feld aus. Hier müssen Sie zwei Datenquellen angeben. Zunächst stellen Sie wie bei den übrigen Feldern das Feld Kategorie und die Datenquelle Schützen ein. Danach wählen Sie als Listendatenquelle die Tabelle Kategorien aus, als Listenfeld den Eintrag ID und als angezeigtes Feld den Eintrag Kategorie. Wiederholen Sie diese Schritte, um eine Aufklappliste für die verschiedenen Waffentypen einzurichten.

Schließlich fügen Sie dem Formular noch eine Navigationsleiste hinzu. Damit springen Sie leichter zum nächsten Datensatz oder fügen neue Einträge ein. Knoda bietet zwar für jedes Formular bereits eine Navigationsleiste an, sie lässt sich aber in Form und Aussehen nicht verändern. Klappt etwas nicht: Nicht verzweifeln, das fertige Formular, das Sie in Abbildung 3 sehen, befindet sich auch auf der Heft-CD.

Abbildung 3: … und schon ist das Formular fertig.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Datenbanken bearbeiten unter KDE
    Datenbanken scheinen unter Linux ein gut gehütetes Geheimnis von Systemadministratoren zu sein. Dabei gibt es mit Knoda ein leicht zu bedienendes KDE-Programm, welches die Handhabung von Datenbanken auch Benutzern erschließt. Dieser Workshop liefert Ihnen den Schlüssel zum Einstieg.
  • KDE-Tool als Access-Ersatz
    Knoda ist eines der besten Datenbank-Frontends unter Linux. Version 0.8.1 hat die Treiber für Sqlite, Paradox und MS Access bereits an Bord und bringt zahlreiche Verbesserungen im Abfrageeditor und für Berichte.
  • Access-Ersatz unter Linux
    Ohne großes Trara veröffentlichte Horst Knorr die Version 0.7.4 seines Datenbanktools Knoda. Doch das Release steckt voll neuer Features: Es bringt Bilder, neue Datenbank-Typen und den oft gewünschten Access-Import.
  • Datenbank-Frontends
    Auf der Landkarte der Linux-Applikationen gibt es nicht viele weiße Flecke - aber einen findet man im Datenbank-Sektor: Im Quadranten, in dem sich Einsteigertauglichkeit und Funktionsvielfalt schneiden, fehlt eine freie Alternative. Benutzerfreundliche, grafische Clients versuchen die Lücke zu schließen.
  • Access-Ersatz für Linux
    Bei Datenbank-Frontends für Anwender gilt Microsoft Access als Maß aller Dinge. Rekall, Kexi, Knoda und OpenOffice Base treten gegen den Platzhirsch an.
Kommentare

Infos zur Publikation

title_2014_10

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

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 4 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...