知错就改之MySQL插入中文字段报错

前言:

在MySQL中插入中文字段会报ERROR 1366错误。
网上找了些相同问题的解决方法,没能解决我的问题,摸索了半天之后才初步解决问题,仅记录下来,以便日后查阅,同时也方便遇到同样问题的小伙伴解决。


问题情景再现:

知错就改之MySQL插入中文字段报错

利用status命令查看MySQL的运行情况:

知错就改之MySQL插入中文字段报错

发现server,db,client,conn都是utf8字符集编码

尝试将数据库和表的字符集编码设置为GBK

alter database db_name character set gbk;

alter table tb_name character set gbk;

set names gbk;

这时候再利用status命令查看下MySQL运行情况:

知错就改之MySQL插入中文字段报错

接着插入记录:

知错就改之MySQL插入中文字段报错

插入记录成功。