我做的标记一些搜索,像“猫”一些用户,而其他像“猫”去图...有没有一种方法可以在MySQL/Rails中强制区分单个查找的区分大小写?
不管怎么说,有没有办法强制特定觉得是区分大小写?如:
Tag.find(:some-special-option-here)
任何想法?
我做的标记一些搜索,像“猫”一些用户,而其他像“猫”去图...有没有一种方法可以在MySQL/Rails中强制区分单个查找的区分大小写?
不管怎么说,有没有办法强制特定觉得是区分大小写?如:
Tag.find(:some-special-option-here)
任何想法?
您也可以在不改变你的列属性区分大小写的搜索。
SELECT * FROM mytable WHERE myfield='Value'
此查询相匹配:
虽然...只有
SELECT * FROM mytable WHERE BINARY myfield='Value'
匹配:
在mysql数据库中,将文本的数据类型设置为utf_collate_bin。例如:
ALTER TABLE `sets` CHANGE `set_name` `set_name` VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL
其中'sets'是表,'set_name'是类型为VARCHAR(64)的列。您也可以在PhpMyAdmin中执行此操作。
任何二进制整理都可以完成这项工作;但是utf8是优选的。
如果你想知道在当前整理的末端_CI时,它的意思是“不区分大小写”:对
您可以在创建表的所有字符串大小写加入 “分页utf8_bin” 到:选项字符串创建表时。例如:
create_table("page_infos", :force => true, :options => "ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin") do |t|
t.string "title", :limit => 120
end
迁移看起来如何使已存在的列区分大小写? – Ben 2012-09-09 00:11:48