Requête MySQL insensible aux accents

Pour effectuer une requête MySQL qui ne sera pas sensible aux accents (par exemple ‘ö’ = ‘o’ ou ‘à’ = ‘a’) il faut rajouter le mot clé COLLATE avec la bonne collection. Après plusieurs tests, j’utilise la collection utf8_general_ci.
Ce qui donnera :

SELECT ID, Nom FROM Inscrits WHERE Nom LIKE '%heracles%' COLLATE utf8_general_ci ORDER BY Nom

Qui retournera, par exemple, « Héraclès ».

ATTENTION : si cette requête fonctionne sur le serveur directement, mais pas dans votre code PHP, alors il faudra peut-être utiliser mysqli_set_charset('utf8'); dans votre code afin que la liaison se fasse correctement.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*