Maison > base de données > tutoriel mysql > Comment puis-je utiliser correctement les paramètres dans les instructions SQL LIKE pour empêcher l'injection SQL ?

Comment puis-je utiliser correctement les paramètres dans les instructions SQL LIKE pour empêcher l'injection SQL ?

Linda Hamilton
Libérer: 2024-12-27 07:38:14
original
262 Les gens l'ont consulté

How Can I Correctly Use Parameters in SQL LIKE Statements to Prevent SQL Injection?

Utilisation de paramètres dans les instructions LIKE pour SQL

Énoncé du problème :

Lors de la création d'une recherche fonction, une requête utilisant des paramètres pour empêcher les attaques par injection SQL est implémenté :

SELECT * FROM compliance_corner WHERE (body LIKE '%@query%') OR (title LIKE '%@query%')
Copier après la connexion

Cependant, cette requête ne renvoie aucun résultat.

Réponse :

Les paramètres peuvent être utilisés efficacement dans les instructions LIKE pour empêcher les attaques par injection SQL. Cependant, la syntaxe utilisée dans la requête d'origine est incorrecte.

Syntaxe corrigée :

La syntaxe correcte pour utiliser les paramètres avec l'instruction LIKE est :

SELECT * FROM compliance_corner WHERE (body LIKE @query) OR (title LIKE @query)
Copier après la connexion

Dans ce cas, le paramètre est défini comme "@query" et sa valeur doit être attribuée à l'aide d'un paramètre requête.

Exemple en VB.NET :

Dim cmd As New SqlCommand(
"SELECT * FROM compliance_corner" _
+ " WHERE (body LIKE @query )" _
+ " OR (title LIKE @query)")

cmd.Parameters.Add("@query", "%" + searchString + "%")
Copier après la connexion

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 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