MySQL invalid utf8 character string

Posted gdme1320

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL invalid utf8 character string相关的知识,希望对你有一定的参考价值。

https://stackoverflow.com/questions/35125933/mysql-utf8mb4-errors-when-saving-emojis
character_set_client, _connection, and _results must all be utf8mb4 for that shortcake to be eatable.
If SET NAMES utf8mb4 is executed, all three set correctly.

mysql中某个text类型的字段中写入emoji字符的时候出现的警告。除了设置table,column的编码为utf8mb4之外,还要记得设置数据库连接的编码。

程序连接的时候指定编码就正常了。我的mysql workbench客户端找不到设置编码的地方(Manage Server Connection - Advanced - Others 加入了charset的选项貌似不起作用),在mysql workbench中insert带有emoji的字符串就会报警告,并且写入的emoji变成了问号,这种情况下执行先执行语句SET NAMES utf8mb4再写入或者查询就正常了。



以上是关于MySQL invalid utf8 character string的主要内容,如果未能解决你的问题,请参考以下文章

MySQL

Mysql常用sql总结

Ubuntu下MySQL中文乱码解决

mysql配置优化

Mysql5.7修改字符集

mysql添加DATETIME类型字段导致Invalid default value错误的问题