Maison > base de données > tutoriel mysql > Comment puis-je intégrer en toute sécurité les variables Python dans les requêtes SQL?

Comment puis-je intégrer en toute sécurité les variables Python dans les requêtes SQL?

Patricia Arquette
Libérer: 2025-01-25 15:46:12
original
500 Les gens l'ont consulté

How Can I Safely Incorporate Python Variables into SQL Queries?

Variables intégrées dans Python dans SQL Query

Lorsque vous utilisez Python pour effectuer une requête SQL, la variable est généralement intégrée dans la requête. Par exemple, vous pouvez insérer les données dans la table de la base de données, et ces valeurs sont stockées en variables.

Question

Considérons le code Python suivant:

Parmi eux, var1 est un entier, var2 et var3 sont une chaîne. Lorsque vous essayez d'écrire un nom de variable sans laisser Python les utiliser dans le cadre du texte de la requête, il y aura des problèmes.

<code class="language-python">cursor.execute("INSERT INTO table VALUES var1, var2, var3")</code>
Copier après la connexion
Solution

Afin de résoudre ce problème, vous pouvez utiliser les occupations de la place dans la requête SQL et transmettre la valeur variable en tant que méta-groupe:

Veuillez noter que le groupe de méta contient des valeurs variables. Cela garantit que l'API de la base de données corrige correctement les variables et les références.

AVERTISSEMENT
<code class="language-python">cursor.execute("INSERT INTO table VALUES (%s, %s, %s)", (var1, var2, var3))</code>
Copier après la connexion

Évitez d'utiliser le format de format de chaîne (%) pour le remplacement variable, car il n'exécute pas la justice ou la référence, et est facilement injecté avec SQL en attaque.

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