ERROR 1366 (HY000): Incorrect string value:mysql编码问题

默认分类 | 2017-09-29 15:03:23 | 65次阅读 | 0评

原来都是在我自己的有道笔记记录和解决问题,从现在开始就要写到自己的博客中了,看了也方便。

新手报到,各位大神求罩,勿喷。。

话不多说,进入第一篇文章:

解压版的mysql安装成功后,在windows窗口下插入数据,报错:

ERROR 1366 (HY000): Incorrect string value:...
在网上搜索了以下两种解决方案

解决方案一:
在mysql安装目录中my.ini文件中加入
[mysql]
default-character-set=GBK
测试后还是插入不成功,还需要把表的字符集也改下, 
alter table tbname convert to charset gbk;

插入成功。


解决方案二:
在windows窗口输入以下命令,查看并修改编码
show variables like '%char%';
1.png (上传于2017-09-29 15:03:23)
1.png

set character_set_client = gbk; 设置插入时接收的编码为GBK, 这样就可以插入中文了
此时中文字符已经可以插入, 但查询结果却还是乱码, 再更改一处即可:
---> set character_set_results = gbk; 设置输出结果的编码为GBK
注: 这样的设置只对当前连接有关, 连接断开, 这些设置恢复数据库默认设置状态,因此,如果需要,每次连接都得设置!

测试结果还是插入失败,还需要把表的字符集也改下, 
alter table tbname convert to charset gbk;
插入成功。
博友评论,共0条
最新评论