我执行一条查询语句:
SELECT * FROM list WHERE name LIKE '%解%'
为什么 name是:"注册表终结者 4.92 "都被我查询出来了.
请告诉我原因
---------------------------------------------------------------
select * from list where name like '%解%';
好像看过说是mysql的问题
可以改成这样试试:select * from list where name like binary '%解%';
---------------------------------------------------------------
select * from list where name like binary '%解%'
这样查询不行吗?
搜了本版好像只有这一种方法了,
我用4.0版没有这种问题,真不行 的话换一个版本吧?
---------------------------------------------------------------
中文问题。
中文是两位ASCII组成,你要搜包含"解"字的纪录,可能"注册表终结者 4.92 "这句话中“册”字的右部分ascii跟表字的左部分ascii正好可以是“解”字的完整ascii(举个例子而已),所以,mysql也认为是符合查询条件的。
解决办法好像是打一个mysql的patch吧~!忘记了。