Bonjour,
Je viens de rencontrer un problème sur un site avec un acces user.
J'ai 2 utilisateurs qui ont le même login enfin presque gicher et GIcher.
lorsque je fais un where login = 'gicher', il me sort les 2.
Comment respecter les majuscules et minuscules ?
C'est la collation qui détermine si la comparaison se fait en tenant compte de la casse
La collation de ton champs doit se terminer par _ci (case insensitive)
Utilises plûtot une collation _bin comme Utf8_bin ou Latin1_bin
Il faut changer les propriétés de ton champs login en BINARY. Si tu n'a rien touché avant tu devrais être en latin1_general_ci. Change cette propriété et passe la en latin1_bin.
en fait j'ai juste modifié le collate du champs login en utf8_bin et ça fonctionne parfaitement
Salut, j'ai trouvé 2 pistes sur un autre forum, un membre suggère de faire une requète du style:
SELECT * FROM matable WHERE nom = 'Dji-Bi' collate utf8_bin
ou alors de changer l'encodage de ta table.
Quelle est la collation d'origine ?
pas sûr qu'on puisse passer de Latin en Utf8 sans un convert
en fait c'est un point que je n'ai jamais abordé, première foi que je suis confronté à ce problème. J'ai essayé de faire
select * from ftth_user where login = 'test' collate utf8_bin
la collation d'origine est utf8 !
utf8 c'est le charset, la collation c'est utf8xxx ou Latin1xxx
essaye ceci
select * from ftth_user where login = 'test' collate utf8mb4_bin
c'est l'utf8 sur 4 octets (pour les chinois)