2013-10-15 76 views
1

这个查询:查询失败,俄文字母

SELECT pair_ID FROM quotes_search WHERE pair_type="type_one" 
    AND (symbol LIKE 'лукойл%' OR UPPER(pair_name) LIKE UPPER('лукойл%')); 

失败,俄语字符(英文字符正常工作)。 有什么建议吗?表和字段是utf8_general_ci

#1064 - 您的SQL语法错误; 检查对应于你的MySQL服务器版本的 正确的语法使用近'
一件事手册,使用MySQL版本时,此查询成功:61年5月1日
但failes当MySQL版本:5.1。 70

+0

您是否从命令行运行查询? –

+1

稍微OT,但我想你正在做一个非二进制字符串的比较,所以区分大小写无关紧要,并且不需要使用'UPPER' http://dev.mysql.com/doc/refman/5.0/en/ case-sensitivity.html – DrCopyPaste

+0

也许这可以帮助你? http://stackoverflow.com/a/7780070/2186023 – DrCopyPaste

回答

0

试试这个

... symbol LIKE CONCAT(_utf8 x'лукойл%', '%') OR ... 
1

运行连接数据库

SET character_set_client = "utf8"; 
SET character_set_results = "utf8"; 
SET character_set_connection = "utf8"; 
后,这个查询