Als je ingewikkelde queries wil uitvoeren of zelf database-elementen wil creëren, dan kan een meer gesofisticeerde interface een duidelijk voordeel zijn. We hebben enkele gratis versies getest in een windows-omgeving en bespreken hier het resultaat.

Inleiding

We bespreken hier enkel lokaal geïnstalleerde software. Er zijn ook DB-interfaces die op de server staan en zelfs als extensie in het Joomla-CMS geïnstalleerd moeten worden. Voor de eerste hang je hoogstwaarschijnlijk af van je site-provider, terwijl voor de Joomla-extensies de toegevoegde waarde als DB-interface mij irrelevant lijken. Let wel, DB-Replacer van RegularLabs zal zeker zijn nut hebben, het valt op door zijn gebruiksvriendelijkheid, maar het is zeer specifiek in zijn functionaliteit.

Van de database-interfaces die we testten, verwachten we geen perifere functionaliteiten zoals project- en version-management maar ze moesten wel een goed overzicht geven van de database en zijn objecten terwijl ze voor het maken en onderhouden van queries, stored procedures enige ondersteuning moest bieden. Zo bestaat er bijv. intellisense waarbij tijdens het typen van DB-objecten suggesties gegeven worden waaruit je kiezen kan zodat je niet de hele naam moet typen, de suggesties beperken zich niet tot de taal-eigen codes maar ook tot de objecten gedefinieerde door de gebruiker (tabellen, procedure calls, ...). Een andere hulp kan bestaan uit de gemakkelijkheid waarmee DB-objecten met drag & drop of klikken in je query-editor geplaatst worden. De meeste voorkomende hulp is een select-query opstarten met 1 klik (of menu-keuze).

4 DB-interfaces heb ik gedownload en geprobeerd. Valentino-studio sla ik al onmiddellijk over omdat (op mijn Windows 8 machine) de interface bij meerdere versie(updates) dooreengeschud leek. De volgende 3 programma’s bleken zowel in Windows 8 als in Windows 10 goed te werken.

Heidi SQL

Heidi SQL , www.heidisql.com , heeft een frisse look & feel en de interface is zeer intuïtief.

Er is geen intellisense maar je kan wel de nodige code of objecten selecteren en met een dubbele klik erop, staan ze in je query of code.
Om een query op te bouwen hebben ze een eigen benadering: aan de rechterzijde kan je de tabel-velden, de rangschikking, en de filter bepalen (voor de SELECT ... FROM ... WHERE ... ORDER BY). Dergelijke functionaliteit zou je eerder verwachten als optie bij de tabel in de linkernavigatie-boom maar je went snel aan deze benadering.

Spijtig genoeg is de data van een tabel of query niet eenvoudig te bewaren/exporteren naar een bestand (ik heb het toch niet gevonden).

Een query-builder is afwezig, voor ingewikkeldere queries zal je dus de joins zelf moeten uitschrijven.

Uniek is dat je scripts kunt plannen in de tijd.

Een leuk extra is de mogelijkheid om je tabellen te markeren als favorieten zodat ze sneller opvallen in de lange lijst van tabellen die Joomla rijk is.

DataBase Workbench Light

DataBase Workbench Light is duidelijk een broertje van een professionele DB-beheer-programma verkocht door Upscene. Op het moment van dit schrijven (2° helft van 2016) was er nog geen (nieuwe) light-versie maar de besproken versie kan nog gedownload worden op http://download.cnet.com/Database-Workbench-Lite-for-MySQL/3055-10254_4-75445494.html?tag=pdl-redir

De vele functionaliteiten maken de interface onoverzichtelijker, het zijn in bijzonder de vele werkbalken die de werkruimte (de editor, de tabel met data, ...) te klein maken als je op een mid-size of klein scherm werkt. Het programma werkt iets trager dan de andere.

Er zijn specifieke editors voor Stored procedures, DB triggers en Constraint-definities. Hier kan je kolommen van tabellen naar toe slepen om de naam exact te kopiëren en je hebt dan nog de keuze om die kolom-naam als een variabele of effectief als kolom in je script te gebruiken. Spijtig genoeg wordt er dan niet “NEW.” noch “OLD.” bijgevoegd wat bij DB-triggers noodzakelijk is.

Er is ook een visuele Query Builder waar je met select & sleep, klikken, .... de benodigde elementen zoals tabellen, kolommen alsook verbanden (joins) kunt opbouwen. Spijtig is deze editor niet vermeld in het menu maar enkel bereikbaar via een knop in elke code-editor, dus het kan een tjidje duren voor een gebruiker deze functionaliteit ontdekt.

De gratis versie is echter beperkt tot maximum 2 servers en 3 DBs. Je kan deze wel gemakkelijk afkoppelen om dan een ander set te bereiken.
Wil je meer vrijheid, en/of wil je geen overladen interface dan zal de volgende databse-interface je zeker bevallen.

Toad for MySQL.

Deze DB-interface heeft een hele geschiedenis achter zich; enkele keren van eigenaar veranderd, begonnen als gratis tool werd ze dan betalend en werd ze onder Dell terug gratis (alvast voor MySQL) om vanaf 31 oktober niet meer aangeboden te worden tenzij als betaald product Toad for MySQL of het (goedkopere) Toad Data Point; op het moment van dit schrijven, september 2017, is ze nog downloadbaar onder https://www.toadworld.com/m/freeware/1469 of onder (vrije)software portals zoals cnet.com, softpedia.com. De gratis Toad for MySQL is gebouwd voor MySql versie 5.6 en werkt enkel po Windows (de profesionele werkt ook op Mac).

De interface is schaars ingericht en toch zijn de belangrijkste tools, functionaliteiten gemakkelijk te bereiken.
In het linker navigatie paneel heb je zoals bij vele interfaces de lijst van objecten (tabellen, views, indexen, procedures) en de databases. In tegenstelling tot PhpMyAdmin worden de DB-objecten die aan een tabel gelinkt zijn zoals Triggers, Stored Procedures, Indexen niet mee in de tabellen-boomnavigatie vermeld [#] maar vind je deze onder tabs (in het linker paneel maar ook in het rechterpaneel).

In tegenstelling tot Heidi zijn er zeer veel functionaliteiten bereikbaar in een handomdraai t.t.z. met een klik. Het exporteren van data naar Excel werkte prima, je kan zelfs terstond een export doen met pivot- of draaitabel in Excel.
Net zoals bij Heidi krijg je in het linker navigatie paneel - met de lijst van tabellen - de velden van een tabel niet te zien (wat wel bij phpMyAdmin het geval is). Dit is extra storend als je een DB-trigger schrijft. Bij Toad is er wel een speciale editor maar de veldnamen worden er niet in gesuggereerd, je moet ze bij wijze van spreken uit je hoofd kennen (of opzoeken onder de Columns- tab in het rechter paneel [#]). Allicht bestaat deze beperking omdat ze ervan uitgaan dat je queries voornamelijk met de visuele Query-builder samenstelt.

Speciaal is de mogelijkheid om data, de tabel-inhoud, die zich in verschillende databases bevindt, met elkaar te vergelijken.

 

Besluit

Elk van de 3 beschreven DB-interfaces heeft zijn gebreken.

Heidi komt er het zwakste uit qua functionaliteiten. Is de gebruikslimiet van Database Workbench Light onoverkomelijk voor jou, dan blijft er Toad als beste keuze over.

Merkwaardig is dat deze interfaces het moeilijk hadden met de kolom position die in de tabel #_modules voorkomt. Het is een reserved word waar hun syntax-checker over valt, hiermee blijkt phpMyAdmin slimmer in het opbouwen van query door systematisch het speciale 'accent' rond kolom- en tabelnamen te zetten.

Qua intern geheugen is Heide SQL zoals verwacht het lichtst: 7,5Mbyte, DB Workbench 4 neemt verrassend genoeg niet zo veel geheugen in: 27,6Mbyte, als Toad: 102,7Mbyte (Windows 10).

De DB-lijst of connection-manager van de 3 DB-interfaces ter vergelijking onder elkaar:
HeidiSQL:

DB Workbench4 werkt met tabs wat wisselen tussen verschillende DB vergemakkelijkt.

Toad: hier kan je je databases verschillende kleuren toewijzen om ze gemakkelijker uiteen te halen.

Goed om weten is dat een connectie tussen je lokale DB-interface en de DB op je server niet altijd mogelijk is. De provider zal je hiervoor wel kunnen helpen. Bij Siteground waar cPanel gebruikt wordt, moet je in de optie “Remote DB access” jouw IP-adres of hostname definiëren (bij mijn tests met wisselend IP-addres volstond het om hiervoor “%” te specificeren).

 


Wil je nog meer vergelijkingen, eventueel betalende programma's lees dan het Engelse artikel https://www.hotjoomlatemplates.com/blog/joomla-installation/381-database-management-tools

Heb je opmerkingen over dit artikel? Contacteer de auteur!