2009-06-02 63 views
0

我收到以下错误:归类(latin1_swedish_ci,COERCIBLE)和非法混合(utf8_general_ci,隐含的)操作 'FIND_IN_SET'

Illegal mix of collations (latin1_swedish_ci,COERCIBLE) and (utf8_general_ci,IMPLICIT) for operation 'find_in_set'

这是我试图执行查询:

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

我查了这个表的属性,它有字符集UTF8和整理utf8_general_ci。

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

+0

[疑难解答“非法混用排序规则”的错误在mysql中可能重复(http://stackoverflow.com/questions/3029321/troubleshooting-illegal-mix-of-collat​​ions-error-in-mysql) – Jocelyn 2016-06-18 07:12:19

回答

2

如果使用mysqli,发出此命令连接之后:

$mysqli->set_charset("utf8"); 

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

带滑动mysql,使用此:

mysql_query("SET NAMES utf8", $conn); 
mysql_query("SET CHARACTER SET utf8", $conn); 
+0

感谢您的反应,但我使用普通的MySQL。 – sanders 2009-06-02 15:17:22

0

我猜你的字符串文字(“1”)是一个不同的排序规则,由于不同的连接变量。请参阅here

相关问题