数据库以及表都采用utf8编码,但是发现有个汉字:
要复制这个文字,请点这个网页:http://www.zdic.net/z/89/js/2163E.htm
编辑一下,发现也无法保存这个文字,上传了上面这个图片给大家看看,如果遇到这个文字在一个内容中间,这个文字以及以后的内容都没了。目前和我遇到的问题类似
再更新一下,使用 utf8mb4 也没用。
mysql请使用utf8mb4编码而非utf8。或者如果你不愿意/出于各种原因无法切换,可以考虑使用mysql的严格模式,这样子当遇到类似情况的时候,它会直接插入失败,而不会自己调整值后插入并给出警告(也就是你所说的后面的内容都丢了)
我本地数据库也无法保存这个字(sf提交后显示不了),提示Warning: #1366 Incorrect string value: '\xF0\xA1\x98\xBE' for column 'word' at row 1
搞定了,如下alter table comments default character set=utf8mb4;
ALTER TABLE
commentsCHANGE
wordword
TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL ;
set names utf8mb4; UPDATE
commentsSET
word` = '
奘?玄奘?提交试一下SF的是否正常?
不对,不是这个字,你那个字读作什么呢?