报错信息
General error: 1366 Incorrect string value: '\xF0\x9F\x98\x82' for column 'text' at row 1
Emoji
表情现在非常流行,用户经常会在输入框内使用Emoji
表情。unicode
标准定义了一个基本 emoji
符号集, 其中共 1182 个字符。例如 U+26A1 表示高电压 (⚡)。
如果我们把输入框内的Emoji
字符,提交到后端进行数据库保存时就会报错
相关资料解释说MySQL
的utf8
不是真正的UTF8
,只能包含三个字节的unicode
,4个字节就会报错。要解决此需要使用utf8mb4
这个编码。
需要把表和column
的CHARSET
都改成utf8mb4
如仍无法存入Emoji
字符
就需要在my.cnf
里修改下mysqld
的character-set-server
,把它改为utf8mb4
,然后重启mysqld
,就可存入Emoji
字符了。
[mysqld]
character-set-server = utf8mb4
我一直都不在评论框里加表情,感觉用得也不多吖,好了,不说了,头开始晕了@_@
谢了
居然是这样。这打字时候窗口抖动有点好玩的
嗯, 窗口抖动用的是的 https://gitee.com/HoeXhe/ActivatePowerMode 这个插件