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