mysql中文显示问题

来源:互联网 发布:python uiautomator 编辑:程序博客网 时间:2024/05/22 12:44
今天在学习mysql 处理大数据对象—处理CLOB数据,在把一个大文本写入到数据表的字段时,发现一条错误:

Exception in thread "main" java.sql.SQLException: Incorrect string value: '\xF0\x9F\x92\x90</...' for……

在网上找资料学习后得知这是mysql的编码问题,我的默认用了utf8编码,网上解决方法是把配置文件my.ini中的两个utf8都改成了gbk,但之后试过很多次仍无法解决。


(找出 my.ini, 打开后 ctrl+ f 找出所有的utf8,全改成gbk)


最后找到一个贴子说就算改了配置文件的两个characterset,还有一个是没改到的。在命令行下进入mysql,输入status;

mysql> status;

就会发现 Db characterset: utf8 这一行,要把这个 utf8 改成 gbk ,输入命令:

mysql> alter database mydatabase character set gbk;

这时再输入status发现全变成gbk了,重启mysql后再运行插入,就没有问题了。


还是新手,虽然自己解决了问题,但原理还是不太懂,仍需努力学习。