PaliSkill
Python avancé

Leçon 5 / 10 — Chapitre 10: Mise en pratique : pipeline d'analyse de données

Sauvegarder les données dans une base SQLite

Cinquième étape : plutôt qu'un fichier JSON (vu dans Python Intermédiaire), stocker les ventes dans une vraie base de données avec sqlite3 (bibliothèque standard) — utile dès que les données doivent être interrogées plus finement que "tout charger, tout parcourir".

import sqlite3

connexion = sqlite3.connect("ventes.db")
curseur = connexion.cursor()

curseur.execute("""
    CREATE TABLE IF NOT EXISTS ventes (
        produit TEXT,
        categorie TEXT,
        montant INTEGER
    )
""")

curseur.execute(
    "INSERT INTO ventes VALUES (?, ?, ?)",
    ("riz", "alimentation", 25),
)
connexion.commit()
connexion.close()

sqlite3.connect("ventes.db") ouvre (ou crée, si absent) un fichier de base de données SQLite — une base de données complète tenant dans un seul fichier, sans serveur séparé à installer. curseur.execute("...") exécute une instruction SQL (déjà vue dans les modules SQL de ce catalogue) directement depuis Python.

Les ? dans la requête INSERT sont des espaces réservés (*placeholders*) : curseur.execute(requete, valeurs) les remplace de façon sécurisée par le tuple ("riz", "alimentation", 25) — jamais en construisant la requête avec une f-string, ce qui exposerait à une injection SQL si une valeur provenait d'une saisie utilisateur non vérifiée.

connexion.commit() valide définitivement les changements dans le fichier ; sans lui, l'insertion resterait en attente et pourrait être perdue. connexion.close() referme proprement la connexion, comme pour un fichier (vu dans Python Intermédiaire).

À vous de jouer : créez une table SQLite avec trois colonnes, et insérez-y une ligne avec des ? comme espaces réservés.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 87 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès