NSI • 1ère

Intégration SQL dans des programmes

Connexion à la base de données
Connexion = Serveur + Base + Authentification
Accès aux données
Python + SQLite :
import sqlite3

conn = sqlite3.connect('database.db')
cursor = conn.cursor()

cursor.execute("SELECT * FROM utilisateurs")
resultats = cursor.fetchall()
Paramètres de connexion :
• Serveur/hôte
• Nom de la base
• Identifiants
• Port
Requêtes paramétrées
🔒
Sécurité contre injection SQL
🔄
Requêtes dynamiques
Performance optimisée
📋
Variables intégrées en toute sécurité
Exemple Python
cursor.execute(query, params)
f-string dans la requête
Bonnes pratiques
🔒
Toujours utiliser des requêtes paramétrées
🔄
Gérer correctement les transactions
🧹
Fermer les connexions après utilisation
🔍
Valider les entrées utilisateur
💡
Utiliser des ORM pour simplifier
Erreurs fréquentes
Erreur 1 :
Injection SQL avec concaténation directe
Erreur 2 :
Oubli de fermer la connexion
Erreur 3 :
Non-utilisation de transactions pour opérations multiples
Applications pratiques Bases de données