“`html

Création de Bases de Données SQLite en Python est une compétence essentielle pour tout développeur Python souhaitant gérer efficacement les données dans ses applications. SQLite est une bibliothèque intégrée dans Python qui permet de gérer des bases de données légères et performantes. Dans ce tutoriel, nous allons explorer la création de bases de données SQLite en Python, ainsi que quelques opérations courantes comme l’insertion, la mise à jour et la suppression de données.

Introduction à SQLite et Python

SQLite est un moteur de base de données relationnelle léger et autonome, parfait pour les applications de bureau et les petites applications web. Python intègre de façon native le module sqlite3, facilitant la gestion des bases de données SQLite directement dans vos scripts Python.

Installation et Configuration

Le module sqlite3 est intégré à Python, il n’est donc pas nécessaire de l’installer séparément. Assurez-vous simplement que Python est installé sur votre machine :

python --version

Vous devriez voir la version de Python installée s’afficher. Si Python est correctement installé, nous pouvons passer à la création de notre base de données SQLite.

Création d’une Base de Données

Créons une base de données SQLite et une table pour stocker des informations. Voici un exemple simple :

import sqlite3

# Connexion à la base de données (ou création si elle n'existe pas)
conn = sqlite3.connect('example.db')

# Création d'un curseur
cur = conn.cursor()

# Création d'une table
cur.execute('''CREATE TABLE IF NOT EXISTS students
               (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)''')

# Sauvegarde des modifications et fermeture de la connexion
conn.commit()
conn.close()

Insertion de Données

Maintenant que notre table est créée, nous pouvons insérer des données dedans. Voici un exemple :

# Connexion à la base de données
conn = sqlite3.connect('example.db')
cur = conn.cursor()

# Insertion de données
cur.execute("INSERT INTO students (name, age) VALUES ('John Doe', 20)")
cur.execute("INSERT INTO students (name, age) VALUES ('Jane Smith', 22)")

# Sauvegarde des modifications et fermeture de la connexion
conn.commit()
conn.close()

Lecture de Données

Pour lire les données de notre table, nous allons utiliser la méthode SELECT. Voici comment :

# Connexion à la base de données
conn = sqlite3.connect('example.db')
cur = conn.cursor()

# Lecture des données
cur.execute("SELECT * FROM students")
rows = cur.fetchall()

# Affichage des données
for row in rows:
    print(row)

conn.close()

Mise à Jour des Données

Nous pouvons aussi mettre à jour les données existantes. Voici un exemple pour changer le nom d’un étudiant :

# Connexion à la base de données
conn = sqlite3.connect('example.db')
cur = conn.cursor()

# Mise à jour des données
cur.execute("UPDATE students SET name = 'John Smith' WHERE name = 'John Doe'")

# Sauvegarde des modifications et fermeture de la connexion
conn.commit()
conn.close()

Suppression de Données

Pour supprimer des données, nous utiliserons la commande DELETE. Voici comment :

# Connexion à la base de données
conn = sqlite3.connect('example.db')
cur = conn.cursor()

# Suppression de données
cur.execute("DELETE FROM students WHERE name = 'Jane Smith'")

# Sauvegarde des modifications et fermeture de la connexion
conn.commit()
conn.close()

Gestion des Erreurs

Il est toujours conseillé de gérer les erreurs potentielles lors de l’interaction avec une base de données. Voici un exemple de gestion d’erreurs avec SQLite :

import sqlite3

try:
    conn = sqlite3.connect('example.db')
    cur = conn.cursor()
    
    # Essayons de lire une table qui n'existe pas
    cur.execute("SELECT * FROM non_existent_table")
except sqlite3.Error as e:
    print(f"Une erreur s'est produite: {e}")
finally:
    conn.close()

Utiliser SQLite dans un Projet Réel

Pour illustrer l’utilisation de SQLite dans un projet réel, imaginons une application de gestion de livres. Nous allons créer une base de données pour stocker les informations des livres et permettre les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) :

# Connexion à la base de données
conn = sqlite3.connect('library.db')
cur = conn.cursor()

# Création de la table
cur.execute('''CREATE TABLE IF NOT EXISTS books
               (id INTEGER PRIMARY KEY, title TEXT, author TEXT, year INTEGER)''')

# Insertion de livres
cur.execute("INSERT INTO books (title, author, year) VALUES ('1984', 'George Orwell', 1949)")
cur.execute("INSERT INTO books (title, author, year) VALUES ('To Kill a Mockingbird', 'Harper Lee', 1960)")

# Lecture des livres
cur.execute("SELECT * FROM books")
rows = cur.fetchall()
for row in rows:
    print(row)

# Mise à jour d'un livre
cur.execute("UPDATE books SET year = 1950 WHERE title = '1984'")

# Suppression d'un livre
cur.execute("DELETE FROM books WHERE title = 'To Kill a Mockingbird'")

conn.commit()
conn.close()

En continuant à explorer SQLite, vous pouvez également voir comment lire des données depuis SQLite en Python pour des affichages conditionnels. Pour cela, consultez notre article sur lecture conditionnelle dans SQLite avec Python. Vous voudrez en savoir plus sur l’insertion de données dans SQLite, retrouvez notre guide complet sur insérer des données dans SQLite avec Python.

Conclusion

La création de bases de données SQLite en Python est une technique puissante qui peut considérablement augmenter l’efficacité de vos applications. Avec SQLite, vous pouvez gérer des données de manière légère et performante sans nécessiter un serveur de base de données lourd. N’hésitez pas à continuer votre exploration et à intégrer SQLite dans vos projets Python pour une gestion optimale des données. Pour apprendre plus sur SQLite et Python, consultez nos autres articles et tutoriels disponibles sur notre site. Par exemple, vous pourriez vouloir approfondir votre compréhension de l’outil par la création de tables SQLite en Python ou encore apprendre à créer des bases de données SQLite en Python.

Learnify Formation Python Offre 50% “`

Categorized in:

Python,

Tagged in: