GUI pro MySQL (2) - Knoda

GUI pro MySQL. Téma na několik článků. Dnes proklepneme projekt Knoda.

21.7.2004 08:00 | Petr Zajíc | přečteno 11143×

Knoda je zkratkou pro Knorr's Datebank a jak už název napovídá, vznikla v Německu. Na oficiálních stránkách tohoto projektu se především dozvíme, že probíhá aktivním vývojem (v době psaní článku byla k dispozici verze 0.7-test3 z 15. června tohoto roku). Taky se dozvíme, že to je "database frontend for KDE" a že je licencována pod GNU/GPL. Je založena na projektu hk_classes od stejného týmu autorů a zatímco hk_classes je skupina knihoven v C++, je Knoda hotovou aplikací.

Instalace

SUSE 9.1 obsahuje balíček s verzí 0.6.2a tohoto programu, Mandrake 10.0 jej v nabídce nemá. Já jsem však byl zvědavý na nejnovější verzi, proto jsem si stáhl zdrojové soubory ze stránky projektu a přeložil. Instalace mě lehce potrápila, nebyla to však úplně chyba programu. Knoda totiž vyžaduje ony hk_classes, které se musejí přeložit a nainstalovat předem. Hk_classes pro spolupráci s MySQL zase vyžadují mysql-devel, který jsem bůhví proč neměl nainstalován. Jinak se vše odehrávalo v duchu configure, make, make install, takže nemá smysl se o tom déle rozepisovat. Samozřejmě, že pro SUSE se musí počítat s tím, že configure je nutno spustit s parametrem --prefix=/opt/kde3. Na Mandraku probíhala instalace úplně stejně, jen balíček pro vývoj pod MySQL se nejmenuje mysql-devel, ale libmysql.

Spuštění

Po spuštění program vyvolá přihlašovací okno:

knoda - přihlášení

Bohužel nelze mít něco jako přihlašovací profily, takže pokud se budete chtít hlásit k několika zdrojům dat, budete to při přihlašování muset pokaždé vypisovat. Po přihlášení a výběru databáze je zobrazeno hlavní okno, které vám nabídne možnost pracovat s tabulkami, dotazy, formuláři a sestavami. Definovat tabulku můžete pomocí jednoduchého rozhraní, které vypadá následovně:

knoda_02

Tomuto rozhraní pro tvorbu tabulky bych vytknul snad jen dvě věci: Jednak dovoluje zadat velikost pole typu Autoincrement, aby jej vzápětí zcela igorovalo, a jednak se zde polím typu varchar říká text. To může mást uživatele některých databází, kde pole typu text je totéž co BLOB. Ale jsou to maličkosti, které se dají přežít.

Rozhraní pro zadávání dat vypadá tímto způsobem:

knoda_03

a na první pohled vypadá docela šmrncovně. Umí například jako vstupní provek pole použít ComboBox, a to dokonce combo vázané na data v jiném sloupci a/nebo tabulce. V tabulce lze třídit, vyhledávat a filtrovat. Knodě budiž rovněž řečeno ke cti, že má možnost nastavit český formát data pro pole obsahující údaje o datu/čase. Ovšem stisknutí Delete mi ve většině případů nabídlo odstranit nikoli buňku, ani řádek, ale hned celou tabulku (!). Jedná se sice o testovací verzi, ale tohle mě opravdu dostalo. Stačila by malá nepozornost a neštěstí je na světě.

K dotazům. Aplikace umí sestavovat a ukládat dotazy, dokonce i ve vizuálním režimu. Vypadá to takto:

knoda_04

a je to intuitivní, elegantní a poměrně dopracované. Vadila mi zase pouze jedna maličkost - že pro každý zdroj dat, byť by to byla tabulka a byť by tam byla poprvé, je vytvořen alias. Takže pro tabulku lidi je vytvořen alias "lidi0" a tak dále. Když se má s výsledným sql příkazem dál pracovat, tak je to zbytečně složité.

Hodnocení

Knoda se snadno instaluje a běží poměrně stabilně. Kromě MySQL se může připojit prakticky k jakékoli jiné databází - nativně k MySQL a PostgreSQL, pomocí UnixODBC prakticky k čemukoli, co obsahuje data. Ovládání je poměrně přímočaré, ale ta věc s delete je MÓÓÓC záludná, takže pozor, ať nepřijdete o svoje tabulky.

Z funkcí obsahuje ještě tvorby formulářů a sestav - ty poběží pouze pokud budete mít k dispozici Python. Naokpak kromě možnosti změnit si heslo zcela chybí příkazy pro administraci databáze (zčásti asi proto, že se Knoda "umí" připojit k mnoha různým databázím). Ze závislostí potřebuje kromě KDE ještě knihovnu hk_classes od téhož autora.

Abych byl upřímný - tak nějak jsem se nemohl ubránit dojmu, že podobnost s MS Accessem je až příliš blízká. Ale k tomu, co jsme vytýčili - základní práce s MySQL v okenním režimu - určitě dobře poslouží.

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=259