Select в MySQL

ghytr00013

такой запрос к базе:
select `name` from `rules` where `name`='4.А.2.а'  

Выдает:

4.А.2.а
4.А.2.б
4.А.2.в

То есть, последняя буква не учитывается почему-то. В чем может быть проблема? Подозреваю, что в кодировке.

sbs-66

Подозреваю, что сравнение строк регистронезависимое, т.е. они все перед сравнением приводятся к одному регистру, а т.к. кодировка указана левая, то все русские буквы переходят в один и тот же символ. Решение - поправить кодировку или сравнивать регистрозависимо или вообще бинарно. Но я могу и ошибаться...

ghytr00013

Я сменил тип данных с text на blob - заработало вроде. Но я не хочу хранить в blob, его править не удобно.

sbs-66

можешь писать == вместо =

la_jazz

а если вместо = написать like ?

Fragaria

не надо костылей, у чувака реально траблы с кодировкой.

NAIL

перед select'oм set names делай

lesha77

попробуй select `name` from `rules` where BINARY `name`='4.А.2.а'
Оставить комментарий
Имя или ник:
Комментарий: