TinyDB est une base de données NoSQL légère, simple et facile à utiliser pour les petits projets Python. Elle est idéale pour les applications qui n'ont pas besoin d'une base de données relationnelle complexe. Dans ce tutoriel, nous allons vous montrer comment utiliser TinyDB avec Python et comment effectuer des opérations CRUD (Create, Read, Update, Delete) complètes.

Pré-requis?

  • Python, rendez-vous ici pour télécharger Python sur votre système
  • Ordinateur
  • Editeur de code

Pour commencer, je vous conseille de créer un dossier vide sur votre machine. Créez un dossier et ajouter un fichier nommé app.py

Ouvrez le projet avec VS Code

Installation de TinyDB

Pour commencer, vous devez installer TinyDB. Vous pouvez l'installer via pip en exécutant la commande suivante :

pip install tinydb

Création d'une base de données

Après avoir installé TinyDB, vous pouvez créer une nouvelle base de données en quelques lignes de code :

from tinydb import TinyDB
db = TinyDB('my_database.json')

Cela crée une base de données nommée "my_database.json" dans le répertoire de travail actuel.

Créer (Insertion de données)

Pour insérer des données dans la base de données, utilisez la méthode insert(). Par exemple, pour insérer un objet représentant un utilisateur, procédez comme suit :

user = { 'name': 'Alice', 'age': 30, 'city': 'Paris'}

user_id = db.insert(user)
print(f'User inserted with ID {user_id}')
Mets ce code dans app.py

Lire (Récupération de données)

TinyDB permet de récupérer des données en utilisant des requêtes. Vous pouvez rechercher des éléments spécifiques avec la classe Query :

from tinydb import Query

User = Query()

# Recherche d'un utilisateur par son nom
result = db.search(User.name == 'Alice')
print(result)

# Recherche d'utilisateurs de plus de 25 ans
result = db.search(User.age > 25)

print(result)

Mettre à jour (Modification de données)

Pour mettre à jour des éléments dans la base de données, utilisez la méthode update() avec une requête correspondante :

# Mettre à jour l'âge d'Alice
db.update({'age': 31}, User.name == 'Alice')

# Vérifier si l'âge d'Alice a bien été mis à jour

updated_user = db.search(User.name == 'Alice')[0]

print(updated_user)

Supprimer (Suppression de données)

Enfin, pour supprimer des éléments de la base de données, utilisez la méthode remove() avec une requête correspondante :

# Supprimer Alice de la base de données
db.remove(User.name == 'Alice')

# Vérifier si Alice a bien été supprimée

result = db.search(User.name == 'Alice')

print(result) # Devrait afficher une liste vide

Conclusion

Dans ce tutoriel, nous avons vu comment utiliser TinyDB avec Python pour effectuer des opérations CRUD complètes. Bien que TinyDB ne soit pas adapté aux projets de grande envergure nécessitant des fonctionnalités complexes, il est parfait pour les petits projets et les applications légères. Alors, n'hésitez pas à l'essayer dans vos prochains projets Python !

Rejoignez les champions