Alter table, string, drop database, grant, revoke, bigint, float, blob – pro někoho představují tato slova denní chléb, někdo se raději nechá ukolébat sladkou nevědomostí a pouze ve stavu nejvyšší nouze otevře manuál pro kontrolu syntaxe. Ostatní pro jistotu vyhledají pomoc někoho zkušeného. Nechme ale manuál ležet, zkušené kolegy zabývat se něčím složitějším a pojďme si představit aplikace, které nám manipulaci s datovým strojem usnadní a zpříjemní.

V minulém článku o možnostech přístupu k datům jsme si představili technologie, které nám mohou pomoci při komunikaci s datovými stroji při tvorbě aplikací webových či desktopových. V tomto díle bychom se vyhoupli o úroveň výše a představili si některé aplikace, které vývojářům či běžným uživatelům výrazně usnadní a urychlí manipulaci s databázemi na datovém stroji.

SQL jazyk a jeho syntaxe základem

Datový stroj je nakonfigurovaný a připravený pojmout data. S datovým strojem komunikujeme na společné vlnové délce prostřednictvím dotazovacího jazyka SQL. Veškeré operace – tvorba tabulek, editace dat, úprava sloupců atd. – lze zakódovat do syntaxe tohoto jazyka. Rozborem syntaxe se nyní nebudeme zabývat a zájemce odkáži na články Jaromíra Skřivana zde na Intervalu. Právě aplikace, které si představíme, nás nechávají částečně zapomenout na tajemná zakoutí SQL jazyka a většinu práce před námi schovají za dialogová okna či efektní formuláře.

SQL jazyk a jeho syntaxe v pozadí

Aplikace pro administraci databází si můžeme rozdělit do dvou základních kategorií:

  • Webbased aplikace: uživatelské rozhraní je složeno z webových formulářů a aplikace beží zpravidla na stejném počítači jako datový stroj.
  • Desktopové aplikace: klasické aplikace, klasická dialogová okna a zcela standardní uživatelské rozhraní. Aplikace zpravidla neběží na stejném stroji a pro smysluplné využívání je slušná internetová konektivita více než žádoucí.

Pro úplnost ještě uvedu jedny ze speciálních aplikací, které zasahují obě výše zmíněné kategorie, ad-hoc řešení a aplikace pro modelování databází. Většina databázových aplikací se neobejde bez uživatelského rozhraní a právě pojmem „ad-hoc řešení“ jsem si dovolil pojmenovat různé administrační miniaplikace, o které jsou obohaceny databázové aplikace. Pomocí těchto aplikací získá uživatel možnost zasahovat do dat, ale pouze do té míry, do jaké mu to tyto aplikace povolí (příkladem mohou být různá fotoalba včetně ‚uploadu‘ fotografií pomocí WWW).

Aplikace pro modelování databází se soutředují spíše na analytický pohled na databázi než na praktickou administraci, ale při větších projektech se jedná o výrazový prostředek k nezaplacení, umožňující návrh databázových struktur pomocí různých typů schémat či naopak. Této specifické oblasti se nyní nebudeme věnovat, ale jmenujme alespoň namátkově zástupce těchto aplikací – MS VISIO nebo DeZign.

Webbased aplikace pro správu datového stroje

Pro tento typ aplikací se staly synonymem různé PHP adminy, hojně využívané mezi free webhostery. Jelikož jste si již mohli něco o těchto aplikacích na Intervalu přečíst, uvedu nyní pouze některé vlastnosti:

  • Obvykle beží na stejném stroji jako DB: výhoda spočívá v rychlosti komunikace s datovým strojem.
  • Přístup možný prakticky odkudkoli: kde je k dispozici WWW, je možné administrovat.
  • Webové uživatelské rozhraní: obvykle nepříliš komfortní práce ve srovnání s klasickou ‚okenní‘ prací.

Zájemcům o tento typ aplikací doporučuji dvojčlánek o phpMyAdmin zde na Intervalu.

Desktopové aplikace pro správu datového stroje

Pro tento typ aplikací jsem si připravil malou ukázku v podobě EMS MySQL Managera, ale dříve, než si představíme tento produkt, dejme prostor některým obecným vlastnostem desktopových aplikací:

  • Obvykle neběží na stejném stroji jako db: nevýhoda spočívá v rychlosti komunikace s datovým strojem. Vyšší konketivita je více než preferovaná, protože objem dat mezi aplikací a db je obecně vyšší.
  • Grafické uživatelské rozhraní: uživatelské rozhraní obvykle zajistí vyšší komfort pro práci a pokročilé techniky zobrazení. S grafickým rozhraním je také mnohdy spojená výhoda v pohodlné editaci položek typu BLOB.

EMS MySQL Manager

Jako zdařilého zástupce desktopového administrátora jsem si připravil ukázku MySQL Managera, který se vyznačuje komplexností nabízených možností a propracovaností funkcí. Je pravdou, že se jedná o komerční aplikaci, ale zkušební verze je k dispozici volně ke stažení a mým primárním cílem je demonstrovat, že i administrace db stroje může být příjemnou záležitostí.

Základní vlastnosti

Verze, kterou budu představovat, je určena pro MySQL a Windows. Nejsou vyžádovány žádné další db ovladače. (Pro zvídavé programátory jedna informace navíc, aplikace využívá ZEOS knihovny pro komunikaci s databází.) Velice podobnou aplikaci mohou nalézt také příznivci Interbase či Firebird pod názvem EMS Quickdesk, přinejměnším po dobu, kdy bude přístup k Interbase a Firebird prakticky totožný.

Administrace

Aplikace standardně nabízí přehled všech vašich nakonfigurovaných db strojů v přehledném stromovém zobrazení. Nakonfigurování dalšího db stroje je maličkostí, musíte znát pouze adresu db stroje, jméno a heslo oprávněného uživatele. Se vším ostatním vám pomůže dialog.

Po připojení k databázi se rozvine strom do další úrovně a nabídne přehled tabulek a uložených UDF (uživatelsky definované funkce, o které můžete obohatit MySQL). V této fázi již můžete pohodlně editovat strukturu tabulek včetně přehledu statistických údajů o tabulce. Samozřejmostí je přístup ke speciálním funkcím jako je přehled běžících procesů, přehled proměnných, oprava databáze, restart databáze, výpis dat vybraných tabulek a podobně. Funkcí, která mimořádně šetří váš čas, je editor uživatelů a jejich práv.

Práce s daty

Ukázka SQL editoru včetně "inteligentních parametrů"

Pro práci s daty jsou k dispozici:

  • Editační datová mřížka: Zobrazí data v přehledné mřížce s možností použití rychlých filtrů, řazení či editací BLOB položek.
  • SQL textový editor: Přehledný editor s funkci Intellisence (pomáhá při psaní SQL příkazů, tabulek, ale také polí), navíc umožnuje využít záložky (bookmark) či barevného zvýraznění příkazů.
  • Visuální SQL editor: Komu nevyhovuje ruční psaní SQL dotazů, může sáhnout po visuálním nástroji, který podle mě působí trochu těžkopádně, ale využít se dá.

Visuální podoba SQL editoru

Každý datový výstup je možné exportovat do širokého spektra formátů, mezi něž patří také ‚SQL inserty‘. Podobně pestré jsou i možnosti importu dat. SQL editor je opravdu zdařilý a lze ho využít pro uchování většího množství připravených syntaxí, protože nabízí také strukturovanou mapu načteného SQL souboru.

SQL editor včetně strukturované mapy celého SQL souboru

MS Access a ostatní aplikace

Některé čtenáře jistě napadlo, že pro administraci by mohl být využit i MS Access, vždyť i já sám jsem ho v předešlém článku označil spíše za grafické rozhraní. MS Acces použít lze, ale pouze pro provádění dotazů nad tabulkami, při editaci struktury tabulek či polí nám příliš nepomůže. MS Access lze použít pro otevření komunikace pomocí ODBC ovladačů, ale většinu systémových SQL příkazů musíme napsat ručně. (Zájemce o problematiku ODBC ovladačů opět odkáži na články Milana Jakela o MySQL, které na Intervalu vyšly již dříve.)

Velice silnou stránkou MS Accesu je jeho vizuální editor dotazů. Stejnou funkčnost jako u jeho nativního formátu *.MDB, kterou bychom od MS Accessu očekávali, mu dali programátoři do vínku ve spojení s MS SQL – v tomto případě jej lze použít jako solidní administrační aplikaci.

Pro uživatele MySQL může být také neméně zajímavý MySQL-Front, který je trochu jednodušší, než představovaný MySQL Manager, ale má v ruce hlavní trumf v podobě tradičně lidové ceny, je totiž zdarma. Co se týče základního užívání, nabízí velice podobnou funkčnost bez pomyslných třešniček, takže si každý musí rozhodnout, zda mu těch několik dolarů stojí za trochu více pohodlí. Bohužel jeho vývoj byl ukončen, není však třeba zoufat, stačí vyčkat, který z jeho nástupců se ukáže být nejschopnějším.

Zmíněné aplikace nejsou samozřejmě jediné, existuje spousta dalších. Honbu, za vhodnou variantou doporučuji zahájit na webových stránkách výrobce databáze.

Starší komentáře ke článku

Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.

Žádný příspěvek v diskuzi

Odpovědět