在select进行中文查询的时候报了如下的错误。
ERROR 1267 (HY000): Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='
Incorrect string value: '\xE7\x9B\x91\xE6\x8E\xA7
表示用hibernate自动创建的,查看一下表的编码:
show create table t_user;
发现其是latin1编码的,需将其转成utf8
命令如下
alter table t_user_friend convert to character set utf8;
当然还可以设置mysql的客户端和服务器的默认编码
vi /etc/mysql/my.conf
在[mysql] 下面 添加 default-character-set=utf8
在[mysqld] 下面添加
character-set-server=utf8
collaction-server = utf8-greneral-cli
修改完后重启mysql server