Bootcamp SQL avec Python + postgreSQL

Bootcamp Sql

Bienvenue sur le programme complet Python/PostgreSQL !

Python et PostgreSQL sont deux des compétences les plus demandées au monde. Après avoir suivi ce cours, tu pourras ajouter ces deux compétences à ton CV. Tout ce que tu apprendras dans ce cours s’applique également à d’autres systèmes de bases de données, comme MySQL, Microsoft SQL Server ou Oracle.

Ce cours te permettra de maîtriser PostgreSQL en le combinant à Python. Si tu utilises Python et que tu souhaites améliorer tes compétences sur les bases de données, tu vas définitivement adorer ce cours !

Dans ce cours, tu vas :

  • Travailler avec différents types de bases de données (en mémoire, SQLite et PostgreSQL), et comprendre quand utiliser chacun d’entre eux dans tes applications Python.
  • Construire un projet de journal de programmation pour ajouter une base de données SQLite à ton application Python.
  • Améliorer la conception d’une base de données de manière incrémentale afin de ne pas être limité par la conception initiale.
  • Modéliser différentes relations avec PostgreSQL : one-to-many et many-to-many.
  • Construire une application de sondage pour apprendre l’analyse avancée des données avec GROUP BY, les fonctions de fenêtre de PostgreSQL et les requêtes imbriquées.
  • Travailler avec les dates et les heures dans PostgreSQL, et éviter les pièges des fuseaux horaires.
  • Structurer des applications Python comme un professionnel, pour faciliter le développement.
  • Produire des rapports d’analyse de données et des graphiques en utilisant Matplotlib avec des données PostgreSQL.

Tu aborderas également des sujets avancés sur PostgreSQL

> Découvre ci-dessous le plan complet du cours !

Pré-requis pour suivre ce programme :

Des connaissances de base en Python sont nécessaires, car le cours se concentre sur l’utilisation de PostgreSQL avec Python. Si besoin tout le pré-requis est dans ce cours.

À qui ce cours s’adresse-t-il ?
  • Les développeurs Python débutants qui souhaitent passer à l’étape suivante de l’amélioration de leurs applications en tirant parti de la puissance des bases de données
  • Tout développeur Python qui n’est pas familier avec les bases de données et qui souhaite comprendre pleinement les choix qui s’offrent à lui avant d’en utiliser une dans ses applications.
  • Les Data Analysts et Data Scientists qui souhaitent créer des applications plus importantes ou interagir avec des ensembles de données plus vastes par le biais d’une base de données.

Contenu cours

Bien commencer
3 Chapitres
Bienvenue dans ce cours !
Aperçu du programme
Configuration initiale (pour les nouveaux Pythonistes)
Journal de programmation avec Python et SQLite
15 Chapitres
Aperçu du projet
Création du menu utilisateur
Qu’est-ce que le langage SQL ?
Utiliser les listes Python comme base de données
Une visionneuse de données SQLite
CREATE TABLE : nouvelles tables avec SQL
Comment se connecter à SQLite avec Python
Qu’est-ce qu’un curseur ?
INSERT INTO : ajouter des données à un tableau
Comment insérer des données dans SQLite avec Python
SELECT : extraction de données
Récupérer des données à partir de requêtes SQLite avec Python
WHERE : filtrer les données
DROP TABLE : supprimer des tables
Qu’est-ce qu’une attaque par injection SQL ?
23 Chapitres
Présentation du projet
Les 3 étapes de notre projet
Code de départ de ce projet
Étape 1 : requêtes de base de données
Rédaction du fichier database.py
UPDATE : mise à jour des lignes
Paramétrer des films sur “visionnés”
Étape 1 : menu utilisateur
Étape 2 : supporte des utilisateurs multiples
DELETE FROM : supprimer des lignes
Étape 2 : visionner des films
Données relationnelles : clés primaires et étrangères
Étape 3 : dernières améliorations
Étape 3 : visionner des films
ID auto-incrémentés
JOIN : recherche dans plusieurs tables
Étape 3 : Utilisation de JOINs pour récupérer les films visionnés
Types de JOIN dans SQLite
ORDER BY : trier les résultats
LIMIT : nombre maximum de lignes
LIKE : recherche flexible
Qu’est-ce qu’un index SQL ?
Ajout d’index dans notre application
Introduction à PostgreSQL
8 Chapitres
SQLite vs. PostgreSQL
Comment installer PostgreSQL
Comment exécuter et accéder à PostgreSQL
Bibliothèques Python PostgreSQL : psycopg2 et psycopg2-binary
Comment stocker des données sensibles dans notre code ?
Curseurs et requêtes Psycopg2
Sequence vs Serial dans PostgreSQL
Examen des modifications et travail avec les diffs
Construire une application de sondage
16 Chapitres
Présentation du projet
Qu’est-ce que l’ACID ?
Construire les parties que nous connaissons déjà
RETURNING les données des lignes modifiées
Requêtes imbriquées : obtenir le dernier sondage
Fonctions intégrées SQL : obtenir un voteur aléatoire
GROUP BY et calcul des pourcentages de vote
Introduction aux fonctions de fenêtre de PostgreSQL
Fonctions de fenêtre de PostgreSQL (partie 2)
Comment utiliser ORDER BY avec les fonctions de fenêtre
Comment utiliser PARTITION avec les fonctions de fenêtre
La clause DISTINCT de SQL
La clause HAVING de SQL
VIEW de SQL : tables virtuelles
Comment lire la documentation de PostgreSQL
Ajouter l’indication de type à notre application
Dates et Times
10 Chapitres
Séparation de notre code en modèles
Qu’est-ce que le connection pooling ?
Connection pooling avec psycopg2
Réduire la duplication du pooling grâce aux gestionnaires de contexte
Le module datetime de Python
Arithmétique des dates avec timedelta
Utilisation de pytz pour les fuseaux horaires (timezones)
Enregistrement des dates dans PostgreSQL
Ajouter la date du vote à notre application de sondage
PostgreSQL avancé
8 Chapitres
Clés primaires composites
Fonctions définies par l’utilisateur
Types composites et sets dans les fonctions
Procédures stockées vs. fonctions
Connexions vs. transactions
Verrouillage dans PostgreSQL
Asynchrone psycopg2
Composition d’une chaîne SQL
Représentation graphique de données à l’aide de Matplotlib
17 Chapitres
Aperçu du projet : Données de sondage
Comment installer Matplotlib
Comment dessiner un graphique linéaire avec Matplotlib
Matplotlib backends
Figures, Plots et Axes dans Matplotlib
L’approche Orientée Objet avec Matplotlib
Comment ajouter plusieurs subplots à une figure ?
Comment dessiner un diagramme circulaire avec Matplotlib
Comment dessiner un diagramme à barres avec Matplotlib
Comment ajuster la taille d’un graphique sur Matplotlib
Comment dessiner un diagramme à barres empilées avec Matplotlib
Comment créer une légende à partir de nos données
Comment exporter une image avec Matplotlib
Comment exporter une image avec plusieurs tracés avec Matplotlib
Comment créer une légende personnalisée avec Matplotlib
Conclusion de cette section et du cours