Béton brut

PHPMyAdmin spotyka SQLBuddy i jest mu z tego powodu bardzo przykro

2008-05-17

PHPMyAdmin jest reprezentantem ruchu ‘dość dobrze’. Jest on dość dobry, dość wygodny, bardzo popularny — ostatecznie okazuje się być czymś pokoju Windows 98, jak się nie ma co się lubi to się lubi, co się ma. Co jakiś czas sprawdzałem czy pojawił się jakiś sensowny konkurent, ale żadna z aplikacji, które wygooglałem nie leżała mi.

Wczoraj pojawiła się nowa zabawka: SQLBuddy. Programik jest darmowy dla zastosowań niekomercyjnych, grube ryby muszą wysupłać \$25. Dzięki rządowi USA z dnia na dzień program staje się coraz tańszy. Po pobraniu i rozpakowaniu archiwum ZIP należy przesunąć katalog gdzieś, gdzie Wasz serwer potrafi je zaserwować. To koniec procedury instalacyjnej: autoryzacja odbywa się po tablicy z uprawnieniami MySQL-a, możemy ją uszczelnić na własną rękę HTTP-AUTH.

wrażenie? Zdecydowanie mniej śmieci na ekranie po zalogowaniu. Po lewej stronie widzimy ‘fałszywy’ listview z którego można wywołać pojedyncze zapytanie, zarządzać użytkownikami i przeglądać listę dostępnych baz danych. Kliknięcie bazy danych rozwija listę dostępnych tabel.

Dzięki zastosowaniu AJAX-a cały interface zachowuje się wyjątkowo żwawo. PHPMyAdmin miał tendencję odświeżania wielkiej ramki z wielką tabelką. Tutaj wszystko doczytuje się dynamicznie.

Słowo o wyglądzie. Interface jest zdecydowanie przemyślany. Widać bardzo mało nadmiarowych informacji, można się skupić na prawdziwej pracy. Widok dostępny po kliknięciu nazwy bazy danych ukazuje nam listę tabel z ilością danych, możliwość skasowania bazy i szybkiego dodania nowej tabeli.

Po kliknięciu na nazwę tabeli przechodzimy do odpowiedniego widoku. Zaczynamy od przeglądu danych. Możemy wybierać jeden lub więcej z wierszy i skasować je lub poddać edycji. Jedną zakładkę dalej mamy możliwość modyfikacji struktury bazy. No i zaczynają się schody.

wiersza jest rozwiązana dość nieciekawie. Wszystkie dane przedstawione są w zwykłych polach input i mają kompletnie w nosie jaki typ danych edytujesz. Wpisałem w unsigned int ‘aaa’ i przeszło bez problemu (komunikat powiedział, że zapisano, ale nic się nie zmieniło, więc pewnie wyciszają błędne zapytania). Mam tu i tam pole typu enum. Logicznym byłoby użyć drop-down-boksa dla ograniczonej liczby opcji zdeterminowanej przez samą strukturę bazy.

Edycja struktury to osobna rzecz. Ta część jest świetnym przykładem, że wszystkie ajaksowo-dehateemelowe cudaki mogą spowolnić pracę. Mamy tu listę pół, które trzeba kliknąć, aby zmienić ich wartości. Tu zdecydowanie wygrywa PHPMyAdmin. Edytowanie tabeli z wieloma kolumnami może być bólem w tylnej części ciała.

Czy PHPMyAdmin ma się czego bać?

Zalety:

  • Mało kodu, łatwiej znaleźć ewentualne błędy
  • Nie ma konfiguracji, działa od ręki
  • Estetyczny wygląd

Wady:

  • Edycja danych nie zwraca uwagi na nic. Nie otrzymujesz komunikatów o tym, że zapytanie nie podmieniło danych
  • Edycja struktury jest uciążliwa i mocno nieintuicyjna
  • Działa tylko z localhost, można przeedytować plik i zmienić wartość \$host

Tak, też to zauważyliście? Mamy fajny interface, ale funkcjonalnie jesteśmy jeszcze w lesie. Zamiast wysłać im \$25 dostaną list z uwagami. Biorę oczywiście pod uwagę, że to pierwsze wydanie i życzę autorom następnej wersji, które nadgoni braki w funkcjonalności.