Maison >développement back-end >Tutoriel Python >Comment puis-je utiliser une liste Python comme paramètre dans une requête SQL ?

Comment puis-je utiliser une liste Python comme paramètre dans une requête SQL ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-01 13:34:09431parcourir

How Can I Use a Python List as a Parameter in an SQL Query?

Utilisation de listes Python comme paramètres dans les requêtes SQL

En Python, vous pouvez rencontrer le besoin d'utiliser une liste comme paramètre dans une requête SQL. Par exemple, si vous disposez d'une liste contenant des identifiants, vous souhaiterez peut-être récupérer des données basées sur ces identifiants. Voici une solution pour y parvenir :

Vous pouvez intégrer des requêtes paramétrées dans votre approche. Cette méthode est polyvalente et fonctionne efficacement avec des valeurs entières et des chaînes. Voici comment l'implémenter :

placeholder = '?'  # For SQLite. Refer to DBAPI paramstyle for other DBs.
placeholders = ', '.join(placeholder * len(l))
query = 'SELECT name FROM students WHERE id IN (%s)' % placeholders
cursor.execute(query, l)

Dans ce code :

  • placeholder est le caractère d'espace réservé utilisé pour représenter un paramètre dans la requête SQL. Cela peut varier en fonction de la base de données utilisée.
  • placeholders est une chaîne contenant le nombre nécessaire d'espaces réservés pour les éléments de la liste, reliés par des virgules.
  • query est la requête SQL formatée avec des espaces réservés.
  • Enfin, curseur.execute(query, l) exécute la requête, en passant la liste sous forme de tuple à l'espace réservé variables.

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!

Déclaration:
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