Instructions Select paramétrées en Python utilisant pyodbc
Cette question explique comment exécuter une instruction SQL SELECT en utilisant une variable comme paramètre dans une boucle sur un tableau appelé « Débit ». Le paramètre spécifique utilisé varie en fonction de l'attribut "DeviceName" de la ligne.
Tentatives initiales
Initialement, l'utilisateur a tenté le code suivant sans succès :
for row in cursor.execute("SELECT * FROM Throughput WHERE DeviceName=%s", %(data['DeviceName'])):
Une autre tentative infructueuse a été :
for row in cursor.execute("SELECT * FROM Throughput WHERE(DeviceName), values(?)", (data['DeviceName']) ):
Travail final Code
En fin de compte, l'utilisateur a réussi à résoudre le problème avec l'extrait suivant :
query = "SELECT * FROM Throughput WHERE DeviceName = '%s'" % data['Device Name'] try: for row in cursor.execute(query):
Déclarations paramétrées
L'approche recommandée est d'utiliser des instructions paramétrées :
cursor.execute("SELECT * FROM Throughput WHERE DeviceName = ?", data['DeviceName'])
Cette approche offre plusieurs avantages par rapport à la précédente tentatives :
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!