选择错误非法混合排序规则

时间:2018-06-04 03:58:19

标签: mysql

我有mysql子句:

Select * from table where firstname like 'INPUT'

我正在尝试输入INPUT以显示错误:

Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'like'

我设定了变量:

enter image description here

我尝试输入表情符号,但仍显示错误。

在这种情况下你能帮助我吗?

2 个答案:

答案 0 :(得分:1)

出现此错误的原因是,您的列firstname位于字符集utf8utf8mb3的别名)中,该字符集不能表示需要4个字节的字符(所有表情符号字符均落下)在此类别中。)

一种解决方法是将firstname上的字符集更改为utf8mb4。但是,这确实存在一个缺点,即如果带有一个索引,则只能将varchar设为191个字符长。

alter table `table` modify `firstname` varchar(191) character set utf8mb4;

答案 1 :(得分:0)

您可以尝试此查询:

select * from table_name where firstname like 'INPUT';

table是一个关键字,因此请尝试在查询中提供表的名称。