Advertisement

SQLSTATE HY000: Error 1366, invalid string value in the content column.

阅读量:

事件前瞻:在学习使用workerman实现socket通讯的过程中,开发了一个类似客服系统的应用,能够存储图片等各类数据,但在将表情符号存入输入法时出现错误,错误提示为:SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\x98\x84' for column 'content' at row 1,相关截图如下:

打印结果:

问题分析:

在MySQL 5.5版本之前,UTF-8编码方式仅能够处理1至3个字节的字符,仅适用于BMP区域内的Unicode编码。而自MySQL 5.5版本起,系统开始支持4字节的UTF编码方式utf8mb4,这种编码方式使得每个字符可以涵盖更广泛的字符集,并且能够支持更多种类的表情符号。

相较于传统的utf8字符集,utf8mb4不仅具备兼容性,还能表示更多的字符内容,因此可被视

全部评论 (0)

还没有任何评论哟~