首页 > 代码库 > mysql 存储过程中报Illegal mix of collations

mysql 存储过程中报Illegal mix of collations

    我写了一个存储过程,里边有一个游标,然后遍历游标,根据遍历的结果update 另外一张表的值,这是大体情况;

    问题是在update的时候报:Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT)错误。


  表和字段的collate都是utf8_unicode_ci,但是server的是utf8_general_ci,还不能改!


没办法只能在存储过程中转换!

解决方法:将比较等式一边进行字符串转换,如改为“CONVERT(变量 USING utf8) COLLATE utf8_unicode_ci

mysql 存储过程中报Illegal mix of collations