0

我收到以下错误:

操作“find_in_set”的排序规则(latin1_swedish_ci,COERCIBLE)和(utf8_general_ci,IMPLICIT)的非法混合

这是我试图执行的查询:

SELECT ID FROM xs_user_profiles WHERE ID='' AND FIND_IN_SET('1',site_structure);

我查了这张表的属性,它有 charset utf8 和 collat​​ion utf8_general_ci。

这适用于我所有的网站,所以我不确定出了什么问题。

4

2 回答 2

2

如果您正在使用mysqli,请在连接后立即发出此命令:

$mysqli->set_charset("utf8");

这会将您的连接编码设置为UTF8(与您的表使用的相同)。

使用 plain mysql,使用这个:

mysql_query("SET NAMES utf8", $conn);
mysql_query("SET CHARACTER SET utf8", $conn);
于 2009-06-02T15:15:26.637 回答
0

我猜你的字符串文字('1')由于不同的连接变量而处于不同的排序规则中。看这里

于 2009-06-02T15:17:30.750 回答