mysql模糊查询 汉字为何不起作用_mysql中文模糊查询遇到的有关问题,各位救急...

该博客讨论了在MySQL中使用GB2312字符集时,如何避免中文模糊查询返回不相关结果的问题。作者分享了尝试过的解决方案,如使用`binary()`字段属性和修改my.cnf配置,同时揭示了ASCII值导致的匹配问题。寻求高级别解决方案和最佳实践。
摘要由CSDN通过智能技术生成

mysql中文模糊查询遇到的问题,各位救急啊!

我现在在mysql上遇到一个问题,我们的字符集是gb2312.在中文模糊查找时,会有不相关的结果集.你有没有好的办法解决啊?

http://www.99net.net/study/prog/68101226.htm是这个问题,但是这个上面说的方法解决不了问题

其一,加字段属性binary(),

其二,改my.cfg启动参数为default-character-set   =gbk(或gb2312).

这些我都做了。

我从问题的根本原因分析,还有下面的问题。

例:

汉字“不”的第1、2字节ascii值分别为:178与187

汉字“安”的第1、2字节ascii值分别为:176与178

汉字“花”的第1、2字节ascii值分别为:187与168

聪明的人已经看出来了:在字符串“安花”中模糊查找字符“不”字时,mysql系统也会认为两者匹配!

我的mysql-4.0.12没有解决上述问题。针对以上问题,各位高手有何解决办法!!!一起来说一说!

------解决方案--------------------

MARK

我也遇到过这种问题,但还没有解决

------解决方案--------------------

查询的字段前加banary

------解决方案--------------------

http://www.phpmore.com/?u=tech_display&id=78

------解决方案--------------------

select name from table where name like binary '% ".$keyword. "% '

------解决方案--------------------

我就这样做的没什么问题呀

e7ce419cf2d6ad34d01da2ceb8829eed.png

微信 赏一包辣条吧~

023a57327877fb4402bcc76911ec18ea.png

支付宝 赏一听可乐吧~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值