PHP Mysql -使用CONCAT时非法混合排序



我一直在尝试从我的表中连接两列,并对它们执行LIKE

下面是mysql的查询:
SELECT * FROM stops WHERE CONCAT_WS(name, ' ', desc) LIKE
'%This%' AND CONCAT_WS(name, ' ', desc) LIKE '%is%' AND 
CONCAT_WS(name, ' ', desc) LIKE '%a%' 
AND CONCAT_WS(name, ' ', desc) LIKE '%test%'

当我通过php代码或phpmyadmin运行它时,我得到以下错误:

Illegal mix of collations (utf8_bin,NONE) and 
(utf8_general_ci,COERCIBLE) for operation 'like'

我一直在检查关于这个话题的类似问题,看到很多答案被告知更改数据库的排序。

我已经改变了所有的数据库,表和字段的集合为utf8_general_ci

当我在Navicat中运行相同的查询时,它工作得很好。

我错过了什么吗?

谢谢!

设置数据库和表-> characterutf8

   ALTER DATABASE db CHARACTER SET utf8 COLLATE utf8_general_ci
ALTER TABLE table CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci

最新更新