sqlite-web è un database browser per SQLite basato sul Web e scritto in linguaggio Python, con un'interfaccia utente accessibile direttamente da Internet. Lo si può utilizzare per operare su database già esistenti o per creare nuove basi di dati.
Si tratta di una soluzione Open Source il cui sorgente è accessibile tramite un repository GitHub dedicato, mentre le funzionalità disponibili sono in pratica quelle essenziali per la manipolazione dei dati tramite una UI visuale.
Le funzionalità di sqlite-web
Con sqlite-web si possono inserire, aggiornare e cancellare i record e visualizzare i contenuti delle tabelle. Nello stesso modo si possono aggiungere e rimuovere tabelle, colonne (è disponibile il supporto per le release più datate di SQLite) e indici. È possibile esportare ed importare dati nei formati JSON (JavaScript Object Notation) e CSV (Comma-Separated Values). L'index che funge da home page dell'applicazione mostra le informazioni di base di un archivio di dati, come per esempio il numero delle tabelle, il loro nome, gli indici presenti e lo spazio occupato su disco.
Non mancano naturalmente gli strumenti per eseguire query SQL arbitrarie sulle tabelle. I risultati vengono mostrati in una tabella apposita e sono sempre esportabili.
Installazione di sqlite-web
Per installare l'applicazione sono necessarie soltanto tre dipendenze: il micro-framework Python flask, l'ORM (Object-Relational Mapper) Peewee e il syntax highlighter Pygments che serve per evidenziare il codice delle query SQL. Una volta recuperate le dipendenza è possibile procedere con l'installazione tramite il package manager pip e l'istruzione:
$ pip install sqlite-web
sqlite-web può essere poi invocato con il comando seguente:
$ sqlite_web [optzione] /path/to/database-file.db
Le opzioni fornite permettono, tra le altre funzionalità, di impostare la paginazione dei record (di default ne vengono mostrati 50 per pagina), di aprire un database di sola lettura e di specificare un certificato SSL e una chiave privata. L'accesso al database avviene tramite password che può essere memorizzata anche all'interno della variabile d'ambiente SQLITE_WEB_PASSWORD
.