[RESOLU] pb minuscule / majuscule

ViPHP
ViPHP | 2577 Messages

16 janv. 2014, 21:56

Bonjour,

Avec phpmyadmin, je fais un select :
SELECT * 
FROM  `langue` 
WHERE US =  'Mark as read'
LIMIT 0 , 30
Et j'obtiens aussi bien "Mark as read" que "Mark as Read" dans les résultats.

Lorsque je fais un group by, il me mélange également les 2.

A la base, je charge les champs avec un update suivie d'un insert si l'update n'a pas rien modifié et je me retrouve avec des doublons. Ca ne touche que quelques lignes dont ce "Mark as read" parmi 12000 environ.

ViPHP
ViPHP | 2577 Messages

17 janv. 2014, 15:02

Bonjour,

J'ai résolu le problème en passant la colonne en utf8_bin pour les maj/min.

Par contre il me reste un problème en cas de blancs à la fin. J'ai triché en ajoutant un md5 de la colonne.

Si quelqu'un a une idée "propre" pour ce genre de problème, je suis toujours preneur.

ViPHP
ViPHP | 928 Messages

19 janv. 2014, 04:01

Salut,

Pour faire des recherches en prenant en compte la casse il faut utiliser LIKE. C'est moins performant que le =, mais si ta table ne comporte que quelques milliers d’enregistrement tu ne devrais pas avoir trop de soucis. Sinon, il faudrait changer le type de ta colonne et utiliser du binaire plutôt (varbinary ou blob).

http://dev.mysql.com/doc/refman/5.0/en/ ... ivity.html

ViPHP
ViPHP | 2577 Messages

20 janv. 2014, 19:32

Merci