Maison >base de données >tutoriel mysql >Comment échapper au caractère esperluette (&) dans les requêtes de recherche SQL ?

Comment échapper au caractère esperluette (&) dans les requêtes de recherche SQL ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-12 18:26:431003parcourir

How to Escape the Ampersand (&) Character in SQL Search Queries?

Échapper au caractère esperluette dans la chaîne SQL

Question :

Le caractère esperluette (&) ne peut pas être échappé dans une requête SQL qui recherche les lignes dont les noms contiennent ce caractère.

Problème résolu :

La requête fournie tente d'échapper à l'esperluette avec une barre oblique inverse () mais ne fonctionne pas pour des raisons inconnues.

Solution 1 :

N'utilisez pas le caractère esperluette dans une chaîne, utilisez plutôt son code ASCII. Cela garantit qu'il est interprété comme une valeur de chaîne plutôt que comme des caractères spéciaux.

<code class="language-sql">node_name = 'Geometric Vectors ' || chr(38) || ' Matrices'</code>

Solution 2 :

Vous pouvez également utiliser l'opérateur LIKE pour rechercher une chaîne contenant le caractère esperluette représenté par un trait de soulignement (_). Cela réduit la probabilité de faire correspondre d'autres enregistrements qui diffèrent uniquement par le caractère de signe.

<code class="language-sql">node_name LIKE 'Geometric Vectors _ Matrices'</code>

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