Maison > développement back-end > tutoriel php > Comment puis-je échapper aux barres obliques dans MySQL pour les opérateurs WHERE (=) et LIKE ?

Comment puis-je échapper aux barres obliques dans MySQL pour les opérateurs WHERE (=) et LIKE ?

Linda Hamilton
Libérer: 2024-11-01 03:48:27
original
645 Les gens l'ont consulté

How do I Escape Slashes in MySQL for WHERE (=) and LIKE Operators?

Recherche de barres obliques dans MySQL : échapper aux considérations pour WHERE (EQ) et LIKE

Lors de la recherche de barres obliques () dans MySQL à l'aide de WHERE ( =) et LIKE, il est important de comprendre les différences subtiles dans les exigences d'échappement.

L'opérateur LIKE est traité par défaut comme un caractère d'échappement, permettant aux utilisateurs de faire correspondre des caractères spéciaux tels que des guillemets ou des barres obliques. Cependant, lorsque vous utilisez l'opérateur WHERE (=), l'échappement n'est pas nécessaire.

Pourquoi la différence ?

Dans LIKE, agit comme un espace réservé pour les caractères spéciaux qui le suivent. . Pour correspondre à une barre oblique inverse littérale, elle doit être échappée avec un . En effet, MySQL supprime le premier lors de l'analyse de la requête, puis à nouveau lors de la correspondance avec le modèle. Ainsi, « test » dans la requête entraînerait une correspondance avec « test » et non « test ». Pour en tenir compte, la chaîne de recherche doit être "test".

Échapper pour OÙ (=)

Bien que l'échappement ne soit pas requis pour OÙ (=), un single sera toujours supprimé par MySQL lors de l'analyse. Par conséquent, si la valeur de recherche contient un littéral suivi d'un caractère, il est recommandé de l'échapper avec un autre . Par exemple, "test" doit être échappé en tant que "test" pour correspondre à "test".

Caractère d'échappement alternatif

Si l'utilisation du caractère par défaut comme caractère d'échappement est problématique , MySQL permet de spécifier un caractère d'échappement alternatif avec le mot-clé ESCAPE. Par exemple :

<code class="sql">SELECT * FROM `titles` WHERE title LIKE 'test\' ESCAPE '|'</code>
Copier après la connexion

Dans ce cas, "|" est utilisé comme caractère d'échappement et la requête correspondra à "test" au lieu de "test".

Conclusion

Comprendre les exigences d'échappement pour les barres obliques dans MySQL est crucial pour garantir des résultats de recherche précis. En suivant les directives décrites ci-dessus, les utilisateurs peuvent interroger efficacement les tables de données et trouver des correspondances contenant des barres obliques à l'aide des opérateurs WHERE (=) et LIKE.

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