Comment se connecter et exécuter des requêtes SQL à une base de données PostgreSQL à partir de Python ?
PostgreSQL est un système de gestion de bases de données relationnelles open source populaire connu pour sa robustesse, son évolutivité et ses fonctionnalités avancées. Python offre une excellente prise en charge de l'interaction avec les bases de données PostgreSQL, permettant aux développeurs de se connecter et d'exécuter de manière transparente des requêtes SQL. Dans cet article, nous explorerons le processus étape par étape de connexion à une base de données PostgreSQL à partir de Python, d'exécution de requêtes SQL et de récupération des résultats. Nous fournirons des exemples de code, des explications et des exemples de résultats pour vous aider à maîtriser cette compétence essentielle.
Dans cet article, nous apprendrons comment connecter et exécuter des requêtes SQL à une base de données PostgreSQL à partir de Python.
Étape 1 : Installez le module psychopg2
La première étape consiste à installer le module psychopg2. Ce module fournit les liaisons Python pour PostgreSQL.
Considérez la commande ci-dessous.
Commande
pip install psycopg2
Étape 2 : Créer une connexion à la base de données
L'étape suivante consiste à créer une connexion à la base de données. Cela peut être fait en utilisant la fonction psychopg2.connect().
Considérez l'extrait de code présenté ci-dessous.
Extrait de code
import psycopg2
conn = psycopg2.connect(
host="localhost",
dbname="my_database",
user="postgres",
password="my_password"
)
Étape 3 : Créer un curseur
Un curseur est utilisé pour exécuter des instructions SQL sur la base de données. Pour créer un curseur, vous pouvez utiliser la méthode curseur() de l'objet de connexion.
Considérez l'extrait de code présenté ci-dessous.
Extrait de code
cur = conn.cursor()
Étape 4 : Exécuter une instruction SQL
Une fois que vous disposez d'un curseur, vous pouvez exécuter des instructions SQL sur la base de données. Pour ce faire, vous pouvez utiliser la méthodeexecute() de l'objet curseur.
Considérez l'extrait de code présenté ci-dessous.
Extrait de code
cur.execute("CREATE TABLE users (id SERIAL PRIMARY KEY, name TEXT)")
Cette instruction crée une table appelée utilisateurs avec deux colonnes : id et name. La colonne id est une clé primaire entière et la colonne name est une colonne de texte.
Étape 5 : Insérer les données dans la base de données
Une fois que vous avez créé un tableau, vous pouvez y insérer des données. Pour ce faire, vous pouvez utiliser la méthode insert() de l'objet curseur.
Considérez l'extrait de code présenté ci-dessous.
Extrait de code
cur.execute("INSERT INTO users (name) VALUES ('John Doe')")
Cette instruction insère une ligne dans la table des utilisateurs avec le nom « John Doe ».
Étape 6 : interroger la base de données
Une fois que vous avez inséré les données dans la base de données, vous pouvez les interroger. Pour ce faire, vous pouvez utiliser la méthodeexecute() de l'objet curseur.
Considérez l'extrait de code présenté ci-dessous.
Extrait de code
cur.execute("SELECT * FROM users")
Cette instruction sélectionne toutes les lignes de la table des utilisateurs.
Étape 7 : Récupérer les résultats
La méthodeexecute() renvoie un ensemble de résultats. Pour récupérer les résultats, vous pouvez utiliser la méthode fetchall() de l'objet curseur.
Considérez l'extrait de code présenté ci-dessous.
Extrait de code
results = cur.fetchall()
La variable results contiendra une liste de toutes les lignes du jeu de résultats.
Étape 8 : Fermez la connexion
Une fois que vous avez terminé avec la base de données, vous devez fermer la connexion. Pour ce faire, vous pouvez utiliser la méthode close() de l'objet de connexion.
Considérez l'extrait de code présenté ci-dessous.
Extrait de code
conn.close()
Sortir
La sortie du code sera une liste de toutes les lignes de la table des utilisateurs.
[(1, 'John Doe')]
Explication
PostgreSQL est un système de gestion de bases de données relationnelles (SGBDR) populaire.
Pour vous connecter à une base de données PostgreSQL, vous pouvez utiliser le module psycopg2 en Python.
-
Le module psycopg2 fournit les liaisons Python pour PostgreSQL.
Pour créer une connexion à une base de données PostgreSQL, vous pouvez utiliser la fonction psycopg2.connect().
Pour créer un curseur, vous pouvez utiliser la méthode curseur() de l'objet de connexion.
Pour exécuter une instruction SQL, vous pouvez utiliser la méthode execute() de l'objet curseur.
Pour insérer des données dans la base de données, vous pouvez utiliser la méthode insert() de l'objet curseur.
Pour interroger la base de données, vous pouvez utiliser la méthodeexecute() de l'objet curseur.
Pour récupérer les résultats, vous pouvez utiliser la méthode fetchall() de l'objet curseur.
Pour fermer la connexion, vous pouvez utiliser la méthode close() de l'objet de connexion.
Conclusion
Dans cet article, vous avez appris comment connecter et exécuter des requêtes SQL à une base de données PostgreSQL à partir de Python. Vous pouvez utiliser ces connaissances pour stocker et récupérer des données des bases de données PostgreSQL en Python.