Vous migrez des données d'une base de données SQLite vers une autre et devez vérifier les résultats. Ou vous comparez une base de staging à la production. Ou vous avez deux versions de la base de données d'une app et devez repérer ce qui a changé. Dans chaque cas, vous devez regarder deux bases de données simultanément — et la plupart des outils SQLite rendent cela plus difficile que nécessaire.
Le jonglage avec les outils à connexion unique
La plupart des navigateurs SQLite sont conçus autour d'une seule connexion de base de données à la fois. Pour comparer deux bases de données, vous ouvrez soit deux fenêtres d'application séparées manuellement (si l'outil le permet), soit vous basculez entre onglets en essayant de garder les valeurs des colonnes en mémoire. Certains outils exigent de fermer une base de données avant d'en ouvrir une autre.
L'approche Terminal est encore pire. Il vous faudrait deux fenêtres de terminal, chacune exécutant sqlite3 contre un fichier différent, en essayant de comparer les résultats côte à côte en texte brut. Ça fonctionne en théorie mais s'effondre dès qu'il y a un vrai volume de données.
Cette limitation existe parce que la plupart des outils de base de données n'ont pas été conçus comme des applications basées sur des documents. Ils ont été conçus autour d'un gestionnaire de connexions — choisir une base de données, travailler avec, se déconnecter, en choisir une autre. C'est adapté aux bases de données de serveurs distants, mais c'est une friction inutile pour des fichiers SQLite locaux.
Tome : un visualiseur SQLite basé sur les documents
Tome traite chaque base de données SQLite comme un document — de la même façon que TextEdit traite les fichiers texte ou que Preview traite les PDF. Ouvrez une base de données et elle obtient sa propre fenêtre. Ouvrez-en une autre et elle obtient aussi la sienne. Disposez-les côte à côte, ou utilisez les onglets natifs de macOS pour les regrouper.
Comparez les bases de données visuellement
Ouvrez vos bases de données source et destination dans deux fenêtres. Placez-les côte à côte à l'aide de la vue Split View de macOS ou en glissant les fenêtres. Parcourez la même table dans les deux pour comparer le nombre de lignes, les valeurs de colonnes, ou les différences de schéma. Aucun changement d'onglet, aucune valeur à mémoriser.
Travaillez sur plusieurs projets
Gardez une base de données de référence ouverte pendant que vous développez sur une autre. Ayez la base de données de production de votre app ouverte à côté d'une base de données de test fixe. Ouvrez le fichier de base de données d'un client pendant que le vôtre reste chargé. Tome ne limite pas le nombre de bases de données ouvertes simultanément.
Ensemble complet de fonctionnalités dans chaque fenêtre
Chaque fenêtre de base de données possède l'interface complète de Tome — barre latérale avec tables, vues, index et déclencheurs ; grille de données avec édition directe ; éditeur de requêtes SQL avec coloration syntaxique et auto-complétion. Il n'y a pas de notion de base de données « principale » et « secondaire ». Chaque base de données ouverte est pleinement fonctionnelle.