Home / LinuxUser / 2006 / 06 / KDE-Tool als Access-Ersatz

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

War doch klar...
(243 Punkte bei 15 Stimmen)
Re: War doch klar...
(179 Punkte bei 5 Stimmen)
Re: Skype für 64-Bit-Prozessor u. Suse 12.1
(161 Punkte bei 4 Stimmen)
Kubuntu verliert Finanzierung
(130 Punkte bei 4 Stimmen)
Offen fürs Geschäft
(80 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

DVD-Verleih

KDE-Tool als Access-Ersatz

01.06.2006 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.

Wer sich mit Datenbank-Frontends unter Linux beschäftigt, kommt an Knoda [1] nicht vorbei. Das KDE-Tool unterstützt mit MySQL, PostgreSQL, Xbase, Firebird, SQLite2/3, Paradox, MS Access (nur lesend über die Mdbtools) und einer allgemeinen ODBC-Schnittstelle nicht nur die meisten Datenbanken: Es liefert von allen Datenbank-GUIs unter Linux auch den größten Funktionsumfang. So konvertiert es zum Beispiel per Drag & Drop eine Sqlite3-Datenbank nach MySQL oder PostgreSQL, unterstützt Views und bringt einen komfortablen Abfrageeditor mit. Durch Python-Skripts lassen sich auch komplexe Aufgaben in Knoda leicht lösen.

Zu den wichtigsten Neuerungen der Version 0.8.1 gehört die Unterstützung für Outer Join und Inner Join im grafischen Abfrageeditor (sofern die Datenbank diese Funktion unterstützt). Daneben passen sich Felder in Berichten nun dynamisch dem Inhalt an.

Installation und Start

Knoda aus dem Quellcode zu übersetzen ist einfacher denn je, da die zugehörige Bibliothek hk_classes die Datenbanken Sqlite2/3, Paradox und MS Access bereits unterstützt. Von Access-Datenbanken liest Knoda allerdings weiterhin nur die Tabellen aus. Der Paradox-Treiber erlaubt nun auch Schreibzugriffe auf die Datenbank. Wie Sie Knoda von Hand kompilieren, lesen Sie im Kasten "Knoda aus den Sourcen".

Benutzer von Suse Linux 9.3 und höher finden auf der Heft-CD fertige RPM-Pakete mit Treibern für MySQL und PostgreSQL. Sind diese Datenbanken auf Ihrem System nicht installiert, bemängelt der Installer fehlende Abhängigkeiten. Möchten Sie Knoda ohne Support für MySQL und PostgreSQL benutzen, installieren Sie die Pakete mit dem Befehl rpm -Uvh *.rpm --nodeps ohne Abhängigkeitskontrolle.

Für Ubuntu befinden sich im Universe-Repository von "Dapper Drake" Knoda-Pakete der Version 0.8.0. "Breezy Badger" kennt erst Version 0.7.4. Der Befehl apt-get install knoda installiert allerdings Knoda nur mit MySQL-Unterstützung. Sie müssen deshalb entweder über apt-get install mysql-server den MySQL-Server nachinstallieren oder per apt-get install libhk-classes-sqlite die Unterstützung für SQLite2 nachrüsten. Möchten Sie auch die Skripting-Funktionen mit Python benutzen, fehlt zudem noch das Paket python-hk-classes.

Alternativ laden Sie sich von der Heft-CD oder der Knoda-Homepage den Sourcecode von hk_classes und knoda herunter und kompilieren das Programm selbst (siehe Kasten "Knoda aus den Sourcen"). In den meisten Fällen klappt das problemlos.

Knoda aus den Sourcen

Knoda dient genau genommen bloß als hübsche Karosserie. Den eigentlichen Motor für das KDE-Programm liefert hk_classes. Diese Bibliothek unterstützt mittlerweile neun verschiedene Datenbanktypen, drei davon sind seit Version 0.8.1 fester Bestandteil von hk_classses.

Die Zahl der effektiv vorhandenen Datenbanktreiber hängt davon ab, welche Entwicklerpakete die zugehörige Bibliothek hk_classes beim Kompilieren findet. Übersetzen Sie das Programm auf einem Rechner, der zum Beispiel die Pakete mysql-devel und postgresql-devel mitbringt, zeigt Knoda später in der Liste der unterstützten Datenbanken diese zwei zusätzlichen Einträge an.

Wissen Sie bereits im Vorfeld, mit welchen Datenbanken Sie arbeiten möchten, lohnt es sich deshalb, hk_classes und knoda (in dieser Reihenfolge) aus dem Quellcode zu erstellen. Dazu genügen die Befehle ./configure, make und (als Root) make install. Achten Sie dabei auf die Ausgabe des Configure-Skripts von hk_classes. Es zeigt Ihnen an, welche Datenbanken Knoda unterstützen wird. Ist die gewünschte Datenbank nicht mit dabei, müssen Sie das entsprechende Entwicklerpaket nachinstallieren. Dieses heißt in der Regel Datenbank -devel oder libDatenbank , wobei Sie Datenbank durch den richtigen Namen ersetzen müssen.

Beim Kompilieren von Knoda teilen Sie dem Configure-Befehl über den Zusatz --prefix=/pfad/zu/kde zusätzlich mit, wo Ihre Distribution die KDE-Dateien ablegt. Unter Suse Linux lautet der volle Befehl ./configure --prefix=/opt/kde3. Bei den meisten anderen Distributionen führt der Befehl ./configure --prefix=/usr zum Ziel.

Den passenden Präfix ermitteln Sie über den Befehl kde-config --prefix. Die Bibliothek hk_classes ist kein KDE-Programm. Sie darf deshalb nicht mit dem KDE-Präfix übersetzt werden. Das Kompilieren von Bibliothek und GUI dauert je nach Leistungsfähigkeit des Rechners zwischen 30 und 90 Minuten.

Datenbank anlegen

Nach dem Start von Knoda durch den Befehl knoda auf der Kommandozeile erscheint das Hauptfenster des Programms mit dem Treiberauswahldialog im Vordergrund. Hier wählen Sie den gewünschten Datenbanktreiber aus und klicken auf Verbinden (Abbildung 1). Je nach verwendetem Treiber erscheint im Anschluss ein Passwort-Dialog oder gleich das Hauptfenster von Knoda. Für folgende Anleitung empfehlen wir Ihnen, wenn möglich MySQL oder PostgreSQL als Datenbank zu nutzen, da Knoda damit wesentlich schneller arbeitet und nachträgliche Veränderungen an den Tabellen jederzeit möglich sind. Die vorgestellte Lösung lässt sich aber auch über SQLite verwirklichen.

Abbildung 1: Beim Start von Knoda wählen Sie den Datenbanktreiber aus.

Wählen Sie nun Datei | Neu | Datenbank, um eine neue Datenbank anzulegen. Per Klick mit der rechten Maustaste auf den Eintrag Tabellen erstellen Sie dann zwei Tabellen für den geplanten DVD-Verleih. Die Tabelle videos soll die Liste der DVD-Filme enthalten, die Tabelle kontakte die Benutzerdaten. Als gemeinsames Feld verbindet die zwei Tabellen die Ausleih-ID AID. Sofern Sie nicht mit Sqlite arbeiten, können Sie die Tabellen später um beliebige Felder erweitern. Sqlite lässt leider an der einmal gespeicherten Tabellenstruktur keine Änderungen mehr zu. Um die Tabellen mit Daten zu füllen, wechseln Sie vom Entwurfsmodus in den Anzeigemodus. Details zum Erstellen von Datenbanken und Tabellen entnehmen Sie über [F1] der Online-Hilfe oder den Workshops unter [2] und [3].

Mit Hilfe eines Formulars soll nun die Zuordnung von Film und Ausleiher erfolgen. Erstellen Sie dazu über Datei | Neu | Formular ein neues Formular und fügen Sie anschließend die beiden neu erstellten Tabellen als Datenquelle hinzu. Dazu klicken Sie auf den Button mit drei Punkten hinter der Dropdown-Liste Datenquelle und wählen jeweils eine Tabelle aus. Einen ausführlichen Artikel, wie man in Knoda Formulare erstellt, finden Sie auch unter [4].

Wählen Sie nun über die Dropdown-Liste als Datenquelle für das leere Format die Tabelle videos aus. Das ist wichtig, damit der Datensatzselektor am unteren Fensterrand funktioniert. Fügen Sie ein erstes Editierfeld ein und wählen Sie als Datenquelle die Tabelle videos und als Feld den Eintrag mit dem Titel der DVD. Als zweites Feld soll eine Combobox die Auswahl des Entleihers ermöglichen. Es schreibt die AID des Ausleihers in die Tabelle videos.

Klicken Sie dazu auf den Combobox-Knopf und wählen Sie dann als Datenquelle das Feld AID der Tabelle videos. Das bedeutet, dass die gewählten Einträge in dieser Tabelle gespeichert werden. Als Listendatenquelle wählen Sie die Tabelle kontakte mit dem Listenfeld AID. Unter angezeigtes Feld wählen Sie die den Namen des Kontakts. Die detaillierten Einstellungen für die Combobox zeigt Abbildung 2.

Abbildung 2: Die Combobox liest die Ausleiher-ID aus der Tabelle kontakte und schreibt die AID in die Tabelle videos.

Wechseln Sie nun in den Ansichtsmodus, so zeigt Knoda im oberen Feld die Titel der DVD-Filme an. In der Combobox sehen Sie den Entleiher und können einen neuen festlegen (Abbildung 3). Die Navigation durch die Datensätze erfolgt über das Kontrollelement am unteren Fensterrand. Wählen Sie aus der Dropdown-Liste einen neuen Kontakt aus, aktualisiert Knoda bei einem Klick auf den nächsten Datensatz die Informationen. Alternativ legen Sie einen separaten Button an, um die Änderungen zu speichern.

Abbildung 3: Das Formular für den DVD-Verleih ist noch ziemlich leer, bringt aber bereits grundlegende Funktionen mit.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

774 Hits
Wertung: 0 Punkte (1 Stimme)

Schlecht Gut

Infos zum Autor

Marcel Hilzinger

Marcel Hilzinger

Marcel Hilzinger arbeitet als Redakteur für die Zeitschriften LinuxUser und EasyLinux. Am liebsten schreibt er Artikel zu netten Gadgets oder Multimedia-Software. In seiner Freizeit spielt er gerne Kicker.

Zum Blog von Marcel Hilzinger →


Infos zur Publikation

Infos zur Publikation

LinuxUser 03/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Duden Korrektor unter 64-Bit
Duden Korrektor unter 64-Bit
Tim Schürmann, 06.02.2012 10:36, 0 Kommentare

Der Duden Korrektor bietet eine äußerst nützliche Rechtschreib- und Grammatikkorrektur für LibreOffice und bringt in der aktuellen Version 8 e...

Aktuelle Fragen

N24 Stick (Huawei E173) und Ubuntu 11.04
Patrick Obenauer, 11.02.2012 11:54, 1 Antworten
Hallo zusammen! Ich benutze einen alten Laptop, der mit Ubuntu 11.04 flott und problemlos läuft....
Wie kann man beim Einsatz von Compiz die Fenster-Dekoration einstellen?
GoaSkin , 10.02.2012 20:12, 0 Antworten
Hallo, ich nutze Linux Mint mit dem Gnome-Derivat Mate. Da die Distribution Compiz nicht autom...
rndc reload zone - failed bad zone
Ludwig jun. B., 06.02.2012 16:08, 2 Antworten
Schönen guten Tag, ich habe folgendes Problem. Immer wenn ich folgendes Kommando ausführen bek...
Skype für 64-Bit-Prozessor u. Suse 12.1
Klaus Sigerist, 05.02.2012 11:39, 3 Antworten
Hallo Gemeinde! Ich bin nur ein einfacher Nutzer und habe Probleme mit der Installation von Skyp...
8! Anfängerfrage :) Wie finde ich in Ubuntu die Datenträger (Bild, Text)
samuel leusam, 04.02.2012 15:53, 2 Antworten
Ich habe neu Ubuntu. Wenn ich die SD Karte im Laptop einstecke, erkennt er sie und gibt ihr den N...