Post

SQLite3

SQLite3

📄 SQLite3 – Résumé pratique (usage courant)

🔹 Qu’est-ce que SQLite ?

SQLite est une base de données légère et intégrée :

➡️ Pas de serveur
➡️ Un simple fichier (.db)
➡️ Idéal pour applications locales (comme ton projet)


🔹 Connexion à une base

1
2
3
4
import sqlite3

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

➡️ Crée la base si elle n’existe pas


🔹 Création d’une table

1
2
3
4
5
6
7
8
9
curseur.execute("""
CREATE TABLE IF NOT EXISTS eleves (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    prenom TEXT,
    nom TEXT
)
""")

connexion.commit()

➡️ commit() = validation des modifications


🔹 Types utilisés (cas courants)

SQLitePython
TEXTstr
INTEGERint
REALfloat
NULLNone

🔹 Insertion de données

1
2
3
4
5
6
curseur.execute("""
INSERT INTO eleves (prenom, nom)
VALUES (?, ?)
""", ("Jean", "Dupont"))

connexion.commit()

➡️ Toujours utiliser ? (sécurité + propreté)


🔹 Lecture des données

1
2
3
4
5
6
curseur.execute("SELECT * FROM eleves")

lignes = curseur.fetchall()

for ligne in lignes:
    print(ligne)

Résultat :

1
(1, 'Jean', 'Dupont')

🔹 Lecture plus précise

1
2
3
4
curseur.execute("SELECT prenom FROM eleves")

for ligne in curseur.fetchall():
    print(ligne[0])

🔹 Filtrer (WHERE)

1
2
3
4
curseur.execute("""
SELECT * FROM eleves
WHERE nom = ?
""", ("Dupont",))

🔹 Mise à jour

1
2
3
4
5
6
7
curseur.execute("""
UPDATE eleves
SET prenom = ?
WHERE id = ?
""", ("Paul", 1))

connexion.commit()

🔹 Suppression

1
2
3
4
5
6
curseur.execute("""
DELETE FROM eleves
WHERE id = ?
""", (1,))

connexion.commit()

🔹 Suppression complète d’une table

1
2
curseur.execute("DROP TABLE IF EXISTS eleves")
connexion.commit()

🔹 Fermeture de la base

1
connexion.close()

🔹 Lecture d’un CSV → SQLite (cas réel)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import csv

with open("eleves.csv", newline='', encoding="utf-8") as f:
    lecteur = csv.reader(f)
    next(lecteur)  # ignorer l'en-tĂŞte

    for ligne in lecteur:
        prenom, nom = ligne

        curseur.execute("""
        INSERT INTO eleves (prenom, nom)
        VALUES (?, ?)
        """, (prenom, nom))

connexion.commit()

🔹 Bonnes pratiques

  • Toujours faire commit() après modification
  • Toujours utiliser ? (Ă©vite les bugs et injections)
  • Fermer la connexion
  • SĂ©parer :
    • crĂ©ation de la BDD
    • import CSV
    • utilisation dans l’application

🔹 À retenir

  • SQLite = fichier + simplicitĂ© + puissance suffisante
  • En Python → très facile Ă  utiliser
  • Parfait pour :
    • MĂ©moLycĂ©e
    • Piveo
    • tes projets locaux

🎯 Ce que tu dois vraiment retenir (version ultra simple)

👉 4 opérations essentielles :

  • CREATE → crĂ©er une table
  • INSERT → ajouter des donnĂ©es
  • SELECT → lire
  • UPDATE / DELETE → modifier / supprimer
This post is licensed under CC BY 4.0 by the author.