Guida introduttiva a DBEaver, un client per basi dati universale ed accessibile

Tempo di lettura: 5 minuti

Le persone non vedenti devono superare un grande ostacolo, per gestire al meglio le basi dati. Trovare un client accessibile. La missione non è semplice, purtroppo i tool proprietari dei vari database sono poco accessibili, alcune volte totalmente inaccessibili. Oggi vi do una soluzione, il client universale DBEaver CE, assolutamente accessibile ed usabile. Lo uso quotidianamente con il lettore di schermo NVDA, su Windows 10.
Questo articolo non tratterà argomenti di teoria sui database, ma a fine articolo vi indicherò alcuni link dai quali poter apprendere le basi di questo argomento. Si da quindi per scontato che si sappia cosa è un database e come interrogarlo mediante il linguaggio SQL standard.

Nota: per chi già li conosce e ne ha di installati, anche i client testuali via prompt dei comandi sono accessibili, ma anche per essi bisogna installare la versione adatta al database che si intende utilizzare. Altro motivo per cui scelgo l’universale DBEaver.

Una scelta accessibile

Scelgo DBEaver, principalmente per la sua accessibilità con le tecnologie vocali. Questo è reso possibile dal fatto che è un progetto che deriva dal noto Eclipse IDE, di cui abbiamo parlato in questo articolo. Questo client ci offre la possibilità di connetterci ad ogni tipo di database, remoto o locale, mantenendo sempre la medesima interfaccia grafica, un vantaggio non da poco per chi ha una disabilità visiva. Inoltre è un software gratuito, disponibile in versione portable o installabile.

Uno sguardo all’interfaccia grafica

Anche DBEaver è suddiviso in view. Possiamo navigare quelle principali con la combinazione “ctrl+f7”.
Ci concentreremo sulle viste database navigator, project explorer e sull’editor.
Quest’ultimo è indispensabile per eseguire comandi sql di tipo DDL e DML ed ha una sua shortcut specifica, infatti basta premere “f3” per aprire un editor.

Connettiamoci a un database esistente

Per questo articolo diamo per scontato che siate in possesso dei dati per accedere ad una base dati locale o remota. Non spiegheremo come installare un software come MySql o PostgreSql, per questo ci sono svariate guide in rete.
L’elenco di tutte le connessioni alle basi dati sono presenti nella view “database navigator”. Naturalmente, al primo avvio, questa view sarà vuota e dovremo creare noi la prima connessione. Come detto in precedenza, dobbiamo essere in possesso di tutti i dati per accedere.
Ecco i passi necessari:

  • premiamo la combinazione “alt + d” e spostiamoci sul menù database. Successivamente, selezioniamo la voce di menù “new database connection”;
  • si aprirà così una schermata dove è presente una griglia contenente tutte le tipologie di database disponibili. Di default il focus di sistema sarà posizionato su un campo di testo in cui possiamo scrivere per filtrare i driver disponibili. In alternativa potremo muoverci con le frecce direzionali per navigare questo elenco. Potremo così scegliere il database a noi congeniale. Ho notato che questa schermata, a seconda delle versioni di DBEaver, è più o meno accessibile con la navigazione tramite focus di sistema, mentre è invece sempre navigabile con la navigazione ad oggetti di NVDA. Infatti sono anche presenti dei “tab” per filtrare ulteriormente le basi dati disponibili;
  • una volta effettuata la scelta ci troveremo difronte alla schermata per inserire i dati per connetterci al database. In linea generale è importante avere la url, la porta, la username e la password. In questa schermata è presente un tasto per testare la connessione;
  • è molto importante testare la connessione, infatti ci fa subito rendere conto di eventuali errori. Inoltre, ci verrà segnalato se ci manca il driver per connetterci al database, solitamente infatti, alla prima connessione sarà necessario scaricarlo, ma DBEaver ci aiuterà anche in questa fase;
  • se il test di connessione è andato a buon fine, potremo premere sul tasto “finish” e terminare così il wizard.

Per questo tutorial faremo riferimento ad una connessione per un database PostgreSql.

Iniziamo l’esplorazione della base dati

Ora se ci spostiamo nella view “database navigator” potremo esplorare la nostra base dati. Qui è presente una classica navigazione ad albero. Individuata la nostra connessione, quella precedentemente creata, espandiamola premendo “freccia destra” sulla tastiera.
Visualizzeremo così il nome del nostro database. Premiamo quindi ancora una volta “freccia destra” per espandere anche questa voce.
Appariranno così altre voci. Espandiamo la voce “Schemas” e selezioniamo lo schema interessato tra quelli disponibili. Naturalmente, diamo per scontato che ci sia almeno uno schema, altrimenti andrà creato.
Una volta espanso lo schema, potremo accedere alla voce delle “tables”, espandiamola per vedere le tabelle incluse nello schema. Anche in questo caso, in assenza di tabelle, andranno create e ora vedremo come.

Script DDL, DML e DQL con DBEaver

È giunto il momento di lavorare sul database e per farlo useremo l’editor interno di DBEaver. Tramite questo strumento potremo eseguire le seguenti tipologie di comandi SQL:

  • comandi di tipo DDL (Data Definition Language) consentono di creare, modificare o cancellare gli oggetti in un database, intervenendo a livello di struttura degli oggetti stessi dello schema . I comandi di tipo DDL sono i seguenti: CREATE, ALTER, DROP, RENAME, TRUNCATE e COMMENT;
  • comandi di tipo DML (Data Manipulation Language) riguardano le operazioni di aggiornamento dei dati. Consentono quindi di inserire, modificare o cancellare i dati delle tabelle, senza intervenire a livello di struttura degli oggetti stessi dello schema. I comandi di tipo DML sono i seguenti: INSERT, UPDATE, DELETE e MERGE;
  • comandi di tipo DQL (Data Query Language) riguardano le operazioni di interrogazione dei dati. Consentono quindi di recuperare i dati delle tabelle. Il comando DQL per eccellenza è SELECT.

Torniamo a DBEaver e apriamo l’editor con “f3”. In base alle impostazioni vi verrà richiesto se volete caricare uno script esistente o se ne volete creare uno nuovo.
Se è la prima volta che usate l’editor ne dovrete creare uno nuovo che potrete poi decidere di salvare per le prossime volte.
Intuitivamente, questo editor serve per scrivere il nostro codice SQL, per poter lavorare sulla base dati.
Ci vengono messe a disposizione davvero moltissime modalità per eseguire singole query o interi script. Noi ne esamineremo solo una, utile per una singola query o per eseguire un intero script.
Una volta scritto il codice SQL nell’editor, premere la combinazione “shift + f10”, dal menù che appare scegliere la voce “execute” e nel sotto menù scegliere “execute SQL script”.
Se non ci saranno errori e tutto andrà liscio, non avremo alcun feedback visivo da DBEaver, mentre in caso di errori comparirà una finestra di dialogo con la descrizione dell’errore.
Nota: in caso si eseguano degli script DDL, la visualizzazione ad albero della view “database navigator” non si aggiornerà automaticamente, ma conviene muoversi sulla prima voce con il nome del database e premere “f5” per forzare il refresh.

Consultare i dati delle tabelle

Per consultare i dati di una tabella, procedere come segue:

  • selezionare la tabella interessata dalla visualizzazione ad albero nella vista “database navigator”;
  • premere la combinazione “shift+f10” e selezionare la voce “read data in SQL console”;
  • DBEaver scriverà per voi una query DQL con una SELECT e la maderà in esecuzione. Nel frattempo il focus di sistema andrà nell’editor, dove è scritta la query;
  • per vedere il risultato della query, con il focus nell’editor, premere la combinazione “alt + 6”. Accederete così ad una sotto sezione dell’editor, suddivisa in una griglia non accessibile. Dovete quindi settare il layout del risultato in formato solo testo. Per farlo, una volta posizionati in questa sotto sezione, premere “shift + f10” e dal menù che appare scegliere la voce “layout” e la sottovoce “text”. Ora potrete vedere i dati estratti dalla query;
  • naturalmente, potete modificare a piacimento la query e scrivere se necessario altre tipologie di script, come delle INSERT o UPDATE.

Nel caso vogliate salvare ed organizzare i vostri script, essi verranno memorizzati su file system e potrete recuperarli in DBEaver dalla vista “project explorer”.

In conclusione

DBEaver è uno strumento potente, di cui abbiamo esaminato solo alcune funzionalità di base. È inoltre possibile configurare tutte le scorciatoie da tastiera, per un uso più approfondito. Con la navigazione ad albero della view “database navigator” è anche possibile capire la struttura del database, quali sono i collegamenti con le altre tabelle della base dati ed avere molte altre informazioni.
Se si prende dimestichezza con lo strumento, si possono mettere in atto altre strategie di navigazione e usare funzionalità avanzate. Per me è uno strumento fondamentale e insostituibile nel mio lavoro da developer.

Materiale proposto

Pubblicato da

Alessandro Albano

Analista programmatore, formatore e tiflologo.