Section 2 : DB Browser pour SQLite¶
Cette section vous apprendra à utiliser DB Browser pour SQLite, un outil graphique essentiel pour le développement d'applications mobiles.
Utilisation dans le développement mobile :
- Concevoir visuellement le schéma avant d'écrire le code Room
- Prototyper et tester les requêtes SQL
- Analyser les bases de données extraites d'appareils Android/iOS
- Déboguer les problèmes de données en développement
- Générer les scripts SQL pour les migrations Room
Workflow professionnel
- Concevoir : Créer le schéma dans DB Browser
- Tester : Insérer des données de test et valider les requêtes
- Exporter : Générer le script SQL
- Implémenter : Créer les entités Room dans Android
- Déboguer : Extraire et analyser la base de l'app avec DB Browser
2.1 Installation de DB Browser¶
DB Browser pour SQLite est un outil graphique open-source pour créer, gérer et modifier des bases de données SQLite.
Installation¶
- Téléchargez l'installeur depuis sqlitebrowser.org/dl
- Choisissez la version Standard installer
- Exécutez l'installeur et suivez les instructions
- Lancez DB Browser for SQLite depuis le menu Démarrer
2.2 Interface de DB Browser¶
Lancez DB Browser et familiarisez-vous avec l'interface :

Onglets principaux
- Structure de base de données : Visualiser les tables, index, triggers
- Parcourir les données : Afficher et filtrer les données
- Modifier les données : Interface d'édition des données
- Exécuter SQL : Console SQL pour exécuter des requêtes
graph TB
A[DB Browser] --> B[Structure de BD]
A --> C[Parcourir les données]
A --> D[Modifier les données]
A --> E[Exécuter SQL]
style A fill:#e1f5ff
style B fill:#fff9c4
style C fill:#f3e5f5
style D fill:#c8e6c9
style E fill:#ffccbc
2.3 Ouvrir la base de données existante¶
Exercice 8 : Ouvrir la base TODO
- Cliquez sur Ouvrir une base de données (icône de dossier)
- Naviguez jusqu'au fichier
todo.dbcréé dans la section 1 - Explorez les tables dans l'onglet Structure de base de données
- Visualisez les données dans l'onglet Parcourir les données

Exploration guidée
- Dans Structure de base de données, développez les tables
- Double-cliquez sur une table pour voir sa structure
- Dans Parcourir les données, sélectionnez différentes tables dans le menu déroulant
2.4 Création d'une nouvelle base de données¶
Exercice 9 : Créer une base de données bibliothèque
Créer la base de données¶
- Fichier → Nouvelle base de données
- Nommez le fichier
bibliotheque.db - Choisissez l'emplacement de sauvegarde
Créer la table Auteurs¶
- Onglet Structure de base de données
- Cliquez sur Créer une table
- Nom de la table :
Auteurs -
Ajoutez les champs suivants :
Nom Type Contraintes idINTEGER PK, AI (Primary Key, AutoIncrement) nomTEXT NOT NULL prenomTEXT NOT NULL nationaliteTEXT - date_naissanceDATE - Note importante sur les dates dans SQLite
SQLite n'a pas de type de données DATE natif. Bien que la syntaxe
DATEsoit acceptée, les dates sont stockées selon l'un des formats suivants :- TEXT : format ISO-8601 (YYYY-MM-DD)
- INTEGER : timestamp Unix (secondes depuis 1970-01-01)
- REAL : jour julien
Il est recommandé d'utiliser le format TEXT avec ISO-8601 pour une meilleure lisibilité et compatibilité avec les fonctions de dates SQLite (
date(),datetime(), etc.). -
Cliquez sur OK

Raccourci
- PK : Primary Key (Clé primaire)
- AI : AutoIncrement (Auto-incrément)
- NN : Not Null (Non nul)
- U : Unique (Unique)
Créer la table Livres¶
- Cliquez sur Créer une table
- Nom :
Livres -
Ajoutez les champs :
Nom Type Contraintes idINTEGER PK, AI titreTEXT NOT NULL isbnTEXT UNIQUE auteur_idINTEGER NOT NULL annee_publicationINTEGER - genreTEXT - nombre_pagesINTEGER - -
Onglet Foreign Keys :
- Cliquez sur Ajouter
- Colonne :
auteur_id - Table de référence :
Auteurs - Colonne de référence :
id - On Delete : CASCADE
-
Cliquez sur OK
Créer la table Emprunts¶
- Nom :
Emprunts -
Champs :
Nom Type Contraintes Valeur par défaut idINTEGER PK, AI - livre_idINTEGER NOT NULL - nom_emprunteurTEXT NOT NULL - date_empruntDATE - CURRENT_DATE date_retour_prevueDATE - - date_retour_effectiveDATE - - -
Foreign Keys :
livre_id→Livres(id)ON DELETE CASCADE
2.5 Insertion de données via l'interface¶
Exercice 10 : Ajouter des données
Méthode 1 : Via l'onglet "Parcourir les données"¶
- Sélectionnez la table
Auteursdans le menu déroulant - Cliquez sur Nouveau enregistrement (icône +)
- Remplissez les champs (laissez
idvide, il sera auto-généré) -
Ajoutez les auteurs suivants :
Nom Prénom Nationalité Date de naissance Hugo Victor France 1802-02-26 Camus Albert France 1913-11-07 Yacine Kateb Algérie 1929-08-02 García Márquez Gabriel Colombie 1927-03-06 -
Cliquez sur Écrire les modifications (icône disquette)
Méthode 2 : Via SQL¶
- Onglet Exécuter SQL
-
Saisissez le code suivant :
-
Cliquez sur ▶ Exécuter (ou appuyez sur F5)
- Cliquez sur Écrire les modifications
N'oubliez pas d'enregistrer
Les modifications ne sont appliquées qu'après avoir cliqué sur Écrire les modifications
2.6 Visualisation et filtrage des données¶
Exercice 11 : Explorer les données
Filtrage simple¶
- Onglet Parcourir les données → Sélectionnez
Livres - Utilisez le champ Filtre en haut :
genre = 'Roman'annee_publication > 1900nombre_pages > 200
Tri des données¶
- Cliquez sur les en-têtes de colonnes pour trier
- Cliquez à nouveau pour inverser l'ordre
Recherche rapide¶
- Utilisez Ctrl+F (ou Cmd+F sur Mac) pour rechercher dans la table actuelle
2.7 Requêtes SQL avancées¶
Exercice 12 : Requêtes complexes
Dans l'onglet Exécuter SQL, testez les requêtes suivantes :
Vue complète des livres avec leurs auteurs¶
Livres actuellement empruntés¶
Statistiques par auteur¶
Résultats attendus
Vous devriez voir :
- Albert Camus avec 2 livres
- Les autres auteurs avec 1 livre chacun
- Les moyennes de pages par auteur
2.8 Modification de structure¶
Exercice 13 : Modifier la structure
Ajouter une colonne¶
- Clic droit sur la table
Livres→ Modifier la table - Cliquez sur Ajouter un champ
- Nom :
prix - Type :
REAL - Cliquez sur OK
Mettre à jour les prix¶
Modification en masse
Vous pouvez aussi mettre à jour plusieurs enregistrements en une seule requête :
2.9 Création de vues¶
Exercice 14 : Créer des vues
Les vues sont des requêtes SQL enregistrées qui se comportent comme des tables virtuelles.
Vue des livres disponibles¶
Vue des emprunts en cours¶
Utiliser les vues
Les vues apparaissent maintenant dans l'onglet Parcourir les données. Vous pouvez les interroger comme des tables normales !
2.10 Import/Export de données¶
Exercice 15 : Importer et exporter
Export en CSV¶
- Onglet Parcourir les données → Sélectionnez
Livres - Fichier → Exporter → Table(s) en CSV...
- Choisissez le nom et l'emplacement
- Configurez les options (séparateur, guillemets, etc.)
Import depuis CSV¶
- Fichier → Importer → Table depuis fichier CSV...
- Sélectionnez le fichier CSV
- Configurez les options d'import :
- Nom de la table
- Première ligne contient les en-têtes
- Séparateur de champs
- Prévisualisez et importez
Export complet de la base¶
Ou via SQL :
Sauvegarde régulière
Pensez à exporter régulièrement votre base de données pour éviter toute perte de données.
2.11 Optimisation et maintenance¶
Exercice 16 : Index et optimisation
Créer des index¶
Les index accélèrent les recherches sur les colonnes fréquemment utilisées.
Analyser et optimiser¶
Quand créer des index ?
Créez des index sur :
- Les colonnes utilisées dans WHERE
- Les colonnes utilisées dans JOIN
- Les colonnes utilisées dans ORDER BY
Évitez les index sur :
- Les petites tables
- Les colonnes rarement utilisées
- Les tables avec beaucoup d'INSERT/UPDATE
2.12 Exercice final intégré¶
Exercice 17 : Application complète
Créez une application de gestion complète en suivant ces étapes :
Étape 1 : Enrichir la base¶
- Ajoutez 5 nouveaux auteurs de votre choix
- Ajoutez 10 nouveaux livres avec différents genres
- Créez 5 emprunts avec différentes dates
Étape 2 : Requêtes d'analyse¶
Créez les requêtes suivantes :
Livres en retard avec pénalités¶
Montant total des livres empruntés par personne¶
Top 3 des genres les plus empruntés¶
Félicitations !
Vous maîtrisez maintenant DB Browser pour SQLite ! 🎉
Synthèse et bonnes pratiques¶
Points clés à retenir¶
Quand utiliser chaque outil ?
sqlite3 (CLI) pour :
- Scripts automatisés
- Intégration CI/CD
- Administration système
- Traitement par lots
DB Browser pour :
- Développement visuel
- Exploration de données
- Prototypage rapide
- Formation et apprentissage
Bonnes pratiques¶
- Toujours utiliser des transactions pour les modifications multiples
- Définir des contraintes (PRIMARY KEY, FOREIGN KEY, UNIQUE)
- Créer des index sur les colonnes fréquemment recherchées
- Utiliser PRAGMA foreign_keys = ON pour activer les clés étrangères
- Faire des sauvegardes régulières avec export SQL
- Tester l'intégrité avec PRAGMA integrity_check