MySQL中ERROR 1366 (HY000): Incorrect string value

在向MySQL中插入中文时,出现了"Incorrect string value: 'xE9xB2x81'"的错误,明显是MySQL编码上出现的问题。

首先尝试修改当前表的编码格式为UTF-8,

1、需要以root用户身份登陆才可以查看数据库编码方式(以root用户身份登陆的命令为:>mysql -u root –p,之后两次输入root用户的密码),查看数据库的编码方式命令为: 

>show variables like 'character%'; 

+--------------------------+----------------------------+ 

| Variable_name | Value | 

+--------------------------+----------------------------+ 

| character_set_client | latin1 | 

| character_set_connection | latin1 | 

| character_set_database | latin1 | 

| character_set_filesystem | binary | 

| character_set_results | latin1 | 

| character_set_server | latin1 | 

| character_set_system | utf8 | 

| character_sets_dir | /usr/share/mysql/charsets/ | 

+--------------------------+----------------------------+ 

从以上信息可知数据库的编码为latin1,需要修改为gbk或者是utf8; 

其中,character_set_client为客户端编码方式;character_set_connection为建立连接使用的编码;character_set_database数据库的编码; 

character_set_results结果集的编码; 

character_set_server数据库服务器的编码; 

只要保证以上四个采用的编码方式一样,就不会出现乱码问题。 


白俊遥博客
请先登录后发表评论
  • 最新评论
  • 总共0条评论