{Le lien de téléchargement a expiré. Veuillez actualiser la page et réessayer.}

Python - Bases de données SQLite pour débutants

Python PDF 12 pages 112.4 Ko 4,327
Python - Bases de données SQLite pour débutants
PDF 12 p. 112.4 Ko
Télécharger

Lien sécurisé — 5 min

par Benoît Petitpas

À propos de ce cours

Il existe de nombreux logiciels de gestion de bases de données relationnelle sur le marché comme postgresql, mysql, sqlite ... une base de données relationnelle se gère via du SQL, le langage de requête de bases de données. Nous allons donc dans ce cours étudier cette gestion de bases de données, mais au lieu d'utiliser des SGBD (système de gestion de bases de données), nous allons préférer gérer les bases via Python. De nombreuses bibliothèques de fonctions ont été développées pour interfacer du code python avec les différents SGBD. Ainsi par exemple psycopg est un paquet Python permettant de gérer une base de données Postgresql en Python. Dans ce cours nous allons utiliser sqlite. Sqlite est un système de gestion de base de données (SGBD) écrit en C qui sauvegarde la base sous forme d'un fichier multi-plateforme. Sqlite est souvent le moyen le plus rapide et le plus simple de gérer une base de données, et comme Python aime la simplicité il existe un paquet standard Python pour faire l'interface entre Python et sqlite. La base de donnée est une notion des années 60. Mais le modèle relationnel date de 70 et les SGBD de 80. Les bases de données relationnelles sont basées sur la théorie des ensembles avec l'utilisation des opérateurs de l’algèbre relationnel (l'union, la différence, produit cartésien, la projection, la sélection, le quotient et la jointure)

Programme du cours

Objectifs d'apprentissage

  • Comprendre les principes fondamentaux des bases de données relationnelles et leur gestion via SQL
  • Maîtriser l'utilisation de SQLite comme système de gestion de bases de données léger et portable
  • Apprendre à interfacer Python avec SQLite en utilisant le module standard sqlite3
  • Savoir créer, modifier et interroger une base de données SQLite à partir de scripts Python
  • Implémenter des opérations CRUD (Create, Read, Update, Delete) en Python
  • Comprendre et appliquer les concepts d'algèbre relationnel (jointures, projections, sélections)
  • Gérer les transactions et l'intégrité des données dans une application Python
  • Développer des applications Python avec persistance des données via SQLite

Public cible

Ce cours s'adresse aux développeurs Python débutants ou intermédiaires souhaitant ajouter des compétences en gestion de données persistantes à leur palette de compétences. Les apprenants devraient avoir une connaissance de base de la syntaxe Python et des concepts de programmation orientée objet. Ce cours est particulièrement adapté aux : développeurs web backend, data analysts, ingénieurs logiciel, et toute personne intéressée par le stockage structuré de données dans des applications Python. Aucune expérience préalable avec les bases de données n'est requise, bien qu'une familiarité avec les concepts de données tabulaires soit utile.

Contenu détaillé

Dans ce cours complet sur Python et SQLite, nous explorerons en profondeur l'intégration entre le langage Python et le système de gestion de bases de données SQLite. SQLite représente un choix idéal pour les applications Python grâce à sa nature sans serveur, sa configuration zéro et son stockage dans un seul fichier multiplateforme.

Nous commencerons par les fondamentaux des bases de données relationnelles, en expliquant comment les données sont organisées en tables avec des relations définies entre elles. Vous apprendrez le vocabulaire clé : tables, colonnes, lignes, clés primaires et étrangères. Le cours couvrira en détail le langage SQL (Structured Query Language) avec un focus sur sa mise en œuvre via Python.

Le module sqlite3 de la bibliothèque standard Python sera notre outil principal. Vous découvrirez comment : établir une connexion à une base de données SQLite, créer un curseur pour exécuter des requêtes, et gérer proprement les ressources. Nous aborderons les meilleures pratiques pour la gestion des erreurs et des transactions.

Une partie importante du cours sera consacrée aux opérations CRUD : vous apprendrez à créer des tables (CREATE), insérer des données (INSERT), récupérer des informations via des requêtes SELECT (y compris avec des conditions WHERE et des jointures), mettre à jour des enregistrements (UPDATE) et supprimer des données (DELETE).

Nous approfondirons les concepts avancés comme : les contraintes d'intégrité, les index pour optimiser les performances, les transactions ACID (Atomicité, Cohérence, Isolation, Durabilité), et les vues. Vous verrez également comment sauvegarder et restaurer des bases SQLite.

Des études de cas pratiques vous permettront d'appliquer ces concepts à des scénarios réels : gestion d'un inventaire, système de suivi de clients, ou journal de données d'application. Le cours inclura des bonnes pratiques pour sécuriser vos données et éviter les injections SQL.

En fin de formation, vous serez capable de concevoir et implémenter des solutions de stockage de données robustes pour vos applications Python, en choisissant judicieusement entre SQLite pour les applications légères et d'autres SGBD comme PostgreSQL pour les besoins plus complexes.