Maison > base de données > tutoriel mysql > Comment puis-je exécuter des requêtes SQL à partir d'un fichier externe en Python ?

Comment puis-je exécuter des requêtes SQL à partir d'un fichier externe en Python ?

Linda Hamilton
Libérer: 2025-01-03 15:24:43
original
429 Les gens l'ont consulté

How Can I Execute SQL Queries from an External File in Python?

Exécuter des requêtes SQL à partir d'un fichier externe en Python

En Python, l'exécution de requêtes SQL est une tâche polyvalente. Cet article se concentre sur la lecture d'un fichier SQL externe et l'exécution des requêtes qu'il contient.

Le problème : exécuter des requêtes à partir d'un fichier

Lors de l'exécution de requêtes spécifiques à partir d'un fichier, il n'est pas immédiatement clair comment adapter la fonction c.execute() pour récupérer les résultats de la requête. Le code fourni exécute les commandes avec succès mais nécessite des éclaircissements pour la ligne :

result = c.execute("SELECT * FROM %s;" % table);
Copier après la connexion

Comprendre le formatage des chaînes

La clé pour comprendre cette ligne est le formatage des chaînes en Python. %s fonctionne comme un espace réservé et la table de variables suivante le remplace. Par exemple :

a = "Hi, my name is %s and I have a %s hat" % ("Azeirah", "cool")
print(a)
# Output: Hi, my name is Azeirah and I have a Cool hat
Copier après la connexion

Application du formatage de chaîne aux requêtes

En remplaçant %s par la variable de table, la fonction c.execute() exécute les requêtes de manière dynamique. La boucle for parcourt les tables, permettant l'exécution de requêtes séquentielles.

Le code suivant fournit une fonction réutilisable pour exécuter des scripts SQL à partir de fichiers :

def executeScriptsFromFile(filename):
    fd = open(filename, 'r')
    sqlFile = fd.read()
    fd.close()
    
    sqlCommands = sqlFile.split(';')
    for command in sqlCommands:
        try:
            c.execute(command)
        except OperationalError, msg:
            print("Command skipped: ", msg)
Copier après la connexion

Pour l'utiliser, appelez simplement :

executeScriptsFromFile('zookeeper.sql')
Copier après la connexion

Grâce à la puissance du formatage de chaîne, l'exécution de requêtes SQL à partir d'un fichier externe en Python devient un processus simple, permettant une exécution dynamique des requêtes et une base de données efficace. manipulation.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal