美文网首页MySQL问题集锦
软件开发随笔——MySql存储emoji表情字符

软件开发随笔——MySql存储emoji表情字符

作者: 求_学 | 来源:发表于2017-07-31 14:37 被阅读0次

    开发过程中使用MySQL存储用户提交的emoji表情时,一开始报错:
    Incorrect string value: '\xF0\x9F\x98\x80' for column 'comment' at row 1

    经过上网一番搜索,发现UTF-8编码有可能是两个、三个、四个字节。Emoji表情或者某些特殊字符是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。最后使用下面的方案把问题解决了:
    1.修改数据库的以下配置并重启服务:

      [mysqld]
      character-set-server=utf8mb4
      [mysql]
      default-character-set=utf8mb4
    

    2.修改表

      ALTER TABLE tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
    

    参考链接:http://www.2cto.com/database/201408/322411.html

    相关文章

      网友评论

        本文标题:软件开发随笔——MySql存储emoji表情字符

        本文链接:https://www.haomeiwen.com/subject/etcrlxtx.html