我们有一个有几百个标签的表。其中一些有特殊字符(西班牙字符)。而其中一些标签可能包含相同的字母,但不包含特殊字符的字符串。做SELECT时MySQL特殊字符显示其他结果没有特殊字符
让我给个例子:
select * from tags where name = 'olga tañón';
我希望在结果得到的是有“奥尔加·坦”的特定行,而是MySQL是给我一个结果:
olga tañón
olga tañon
olga tanon
注意这是相同的字母,但其中一些有特殊字符(ñ和ó),而其他字母则没有。表编码是latin1。我们用Rails 3.2和MySQL 5.x的
下面是一个例子代码
Tag.where(:name => "olga tañón")
Tag Load (94.6ms) SELECT `tags`.* FROM `tags` WHERE `tags`.`name` = 'olga tañón'
=> [#<Tag id: 57502, name: "olga tañón">, #<Tag id: 75642, name: "olga tañon">, #<Tag id: 114622, name: "olga tanon">]
我们能做什么,如果我们想,当我运行一个查询来获取在SELECT结果返回的字符串完全相同特殊字符。
谢谢!
谢谢!将排序规则设置到列确实有效。 – Guillermo 2012-03-17 15:17:13