我设置了一个MyISAM表来执行全文搜索。I不不希望搜索区分大小写.
我的搜索内容如下:
选择*从搜索匹配(关键字)相对(‘+多样性+kitten’在布尔模式);
假设我正在寻找的关键字字段具有“我的多样性小猫”的价值。
我注意到搜索是区分大小写的。我在搜索表上反复检查了我的排序规则,它被设置为utf8_bin.哦哦!我把它改成了utf8_general_ci.
但是我的查询仍然是区分大小写的!为什么?
是否也需要更改服务器设置?
除了改变校对之外,我还有什么需要做的吗?
我做了一个“快速修复表搜索”来重建全文索引,但这也没有做到.
我的搜索仍然是区分大小写的。=(
发布于 2011-02-09 14:54:31
啊哈,这次算出来了。
我认为我的问题是使用NaviCat更新排序规则。我有一个旧版本的NaviCat,可能是个bug什么的。
做:
将表搜索转换为字符集utf8排序规则utf8_general_ci;
修好了。
孩子们,永远使用命令行!=)
发布于 2011-02-09 13:21:50
嗯--这种行为与手册不匹配
默认情况下,搜索是以不区分大小写的方式执行的。但是,可以使用索引列的二进制排序规则来执行区分大小写的全文搜索.例如,可以为使用
latin1字符集的列分配latin1_bin排序规则,使其对全文搜索具有区分大小写的能力。
您使用哪个版本的MySQL?你能提供一些数据来在另一台机器上复制这个问题吗?
https://stackoverflow.com/questions/4945349
复制相似问题