Dans le joyeux monde de la programmation, il est souvent nécessaire de stocker des informations.
À petite comme à grande échelle, les Bases De Données (BDD) s’imposent comme une forme efficace de stockage. Il est alors plutôt aisé d’interagir avec celles-ci en utilisant un Système de Gestion de Base de Données (SGBD), un logiciel spécialement conçu pour les gérer et les manipuler à l’aide d’un langage normalisé tel que le Structured Query Language (SQL).
Parmi les SGBD, nous pouvons trouver SQLite qui utilise un sous-ensemble de SQL. Sa légèreté et le fait que les données se trouvent sur le terminal du client et non sur un serveur distant, en font un outil apprécié pour des applications personnelles ou encore dans l’embarqué. Toutefois, il est relativement lent. SQLite fait partie de la famille des SGBD dits « Relationnelles », car les données sont alors placées dans des tables et traitées comme des ensembles.
À travers ce tutoriel, nous allons donc apprendre à utiliser ce dernier tout en pratiquant.
Ce tutoriel, n’est ni une introduction aux BDD ni une introduction au langage SQL. Il est donc recommandé de vous référer à ce tutoriel pour vous familiariser avec ces concepts. De plus, des bases en Python, que vous pouvez acquérir avec ce tutoriel par exemple, sont nécessaires pour être à l’aise.
Pour ce tutoriel, j’utiliserai la version 3.12 de Python. Il est possible qu’il y ait quelques petites différences concernant le module selon votre version de Python, c’est pourquoi il faut que vous choisissiez la documentation adaptée à votre version.
Prérequis
Bases en programmation et connaissances en Python
Connaissances en BDD et en SQL
Objectifs
Faire découvrir le module sqlite3
Vous êtes prêt ? Alors, en route !
Fonctionnalités de base
- Se connecter et se déconnecter
- Exécuter des requêtes
- Parcourir des enregistrements
- Récupérer quelques informations
- Utiliser des clefs étrangères
Fonctionnalités avancées
- Gérer les exceptions
- Utiliser ses propres fabriques
- Ajouter ses propres types
- Créer une copie sauvegardée
- Simplifier son code
Au cours de ce tutoriel, nous avons appris à utiliser sqlite3. Comme vous avez pu le constater, c’est un outil à la fois puissant et flexible.
Si vous souhaitez en apprendre plus ou renforcer vos connaissances, vous pouvez vous référer aux liens suivants (liste non exhaustive) :
Enfin, il est possible que vous recherchiez des alternatives à SQLite pour diverses raisons (si vous voulez stocker vos données sur un serveur distant par exemple). Dans ce cas là, vous pouvez poursuivre avec un autre SGBDR tel que MySQL et il vous sera assez facile de porter votre code. D’autre part, vous pouvez aussi vouloir vous tourner vers d’autres types de SGBD, notamment ceux dits NoSQL tel que MongoDB (utilisable en Python avec la distribution PyMongo), ou encore vers d’autres formats (xml, json, etc.).
Comme vous le savez, votre choix dépendra de vos besoins.
À bientôt !
Merci notamment à Aabu, nohar et germinolegrand pour leurs retours.
Merci à artragis pour la validation.