in Yazılım

MySQL sorgularında birebir eşleştirme

Tablonuzda label isminde bir alan olduğunu varsayalım. Bu alanın COLLATE değeri utf8_general_ci veya utf8_unicode_ci olsun. Tabloda sadece label değeri ‘Ş’ olan tek bir kaydınız varsa ve WHERE label = ‘S’ şeklinde arama yaparsanız MySQL sonuç olarak olarak ilgili kaydı döndürecektir. Bunun önüne geçmek için ilgili alanın COLLATE değerini utf8_bin şeklinde ayarlamanız gerekmektedir. Böylece ilgili aramayı tekrar yaparsanız herhangi son İlgiuç dönmeyecektir.

Not: Aynı sorun Ç ve C için ve bunu gibi diğer karakterler için de geçerli olabilmektedir.