sobota 1. září 2007

HenPlus == SQL shell

Máte rádi příkazovou řádku? Já ano. S prostředky na průchod historií příkazů a s automatickým doplňování výrazů je to mocná a efektivní zbraň. Z těchto důvodů docela rád používám SQL terminálové klienty, jako je SQL*Plus (Oracle) nebo psql (PostgreSQL).

Tolik teorie. Praxe bohužel naráží na moje limity ohledně schopnosti zapamatovat si a dlouhodobě udržet v paměti množtví proprietárních drobností, které z uvedených toolů dělají plnohodnotný pracovní nástroj. Teď mluvím o příkazech jako show tables nebo quit (sqlplus), resp. \dt nebo \q (psql).

Kudy na sjednocení? Díky přenositelnosti a JDBC rozhraní se celkem logicky nabízí Java. Dlouho jsem používal DbVisualizer, který však nemá výše uvedenou sílu terminálových klientů. A pak, blesk z čistého nebe: HenPlus.

Vypíchnu jen některé vlastnosti a zbytek nechám na laskavém čtenáři s odkazem na dokumentaci projektu:
  • bash like vlastnosti prostřednictvím knihovny readline
  • jednotné připojení ke všem typům databází pomocí příkazu connect jdbc:postgresql://localhost/foo
  • podpora více paralelních připojení a přepínání mezi nimi
  • auto kompletace na úrovni příkazů i databázových objektů
  • definice zástupců (alias): alias ls tables
  • definice vlastních proměných: set-var tabname footab; select count(*) from ${tabname};
  • dump tabulek nezávislý na databázi

Žádné komentáře: