Forum Webscript.Ru
Общие => Базы данных => Тема начата: bhor от 21 Октября 2003, 16:17:32
-
Есть таблица в mysql с товаром
id - int(10)
name - varchar(255)
cost - float(10,2)
artocul - varchar(5)
grp_id - smallint(5)
так вот делаю select*from pos where artocul=\'ОМ222\';
Выводит 0 строк
хотя такое значение точно есть, т.к. если выводить запросом select*from pos where grp_id=10;
то все ок.
проблемма не в скриптах точно т.к. пробовал делать запросы из консоли.
проверял даже так сначала select*from pos where grp_id=10; потом копировал значение артикула(1 в 1) и втыкал в 1й запрос.
-
bhor:
select*from pos where artocul=\'ОМ222\';
проверь соответствие символов ОМ222 тем что у тебя в базе. т.е. ОМ може быть латинскими или кирилическими буковками написано или мб 0 (ноль) там стоит.
-
если буквы русские - настрой кодировку.
-
USE:
проверь соответствие символов ОМ222
яж писал что все проверено.
проверял даже так сначала select*from pos where grp_id=10; потом копировал значение артикула(1 в 1) и втыкал в 1й запрос.
fidget:
русские - настрой кодировку
Настроена.
character_set cp1251
character_sets cp1251 big5 cp1257 croat czech danish dec8 dos estonia euc_kr gb2312 gbk german1 greek hebrew hp8 hungarian koi8_ru koi8_ukr latin1 latin2 latin5 swe7 usa7 win1250 win1251 win1251ukr ujis sjis tis620
т.е. как я и писал что есть куча артикулов на русском языке 99% селектом выбираются а 1% нехочет. пробовал руцями писать тот же артикул(думал может кодировка и т.п.) всеравно не находит
-
перестрой индексы. если не поможет - составляешь test case и пишешь bug report.
-
fidget:
перестрой индексы
как? ;-)
-
myisamchk -rq
или
REPAIR ... QUICK