【问题标题】:How do I enter emoji into a MySQL database?如何将表情符号输入 MySQL 数据库?
【发布时间】:2020-11-29 14:00:54
【问题描述】:

如果这是一个模糊的问题,请提前抱歉,我擅长基本的 SQL 知识,但绝不是专业的字符编码超出我的想象。

我目前在一个网站上设置了一个基本的评论系统,它有一个基本的表单,可以将 textarea 框的内容提交到 MySQL 数据库,我认为看看我是否可以让表情符号正常工作是个好主意以防有人试图进入。

我已将表的编码更改为 utf8mb4,并将我的页面在连接数据库时使用的更改的字符集更改为 utf8mb4。

但这就是我对此的理解结束的地方,它仍然不起作用。目前,当一个表情符号输入数据库时​​,我得到一串这样的字符(对于杰克灯笼表情符号):

🎃

说实话,我不知道那是一种什么样的编码!有人知道我要去哪里错了吗?正如我所说,所有这些东西都在我脑海中浮现,所以不要因为我把它弄傻了而感到难过????

【问题讨论】:

  • 唯一棘手的地方是使用utf8mb4 而不是utf8。像Á 这样的常规UTF-8 字符是否有效?您需要在整个堆栈中使用 UTF-8。
  • 不,看起来那些字符也不起作用!
  • 这能回答你的问题吗? How to store Emoji Character in MySQL Database
  • 好吧,那么这并不是一个真正的表情符号问题。在您使用的任何平台中,都有一个步骤是您依赖默认编码而不是 UTF-8。如果没有进一步的细节,就不可能说出你错过了什么。
  • 那是 mojibake 的 ???? -- 请参阅stackoverflow.com/questions/38363566/…中的 Mojibake

标签: mysql sql unicode encoding emoji


【解决方案1】:

您必须将字符集更改为 utf8mb4。

编辑: 在这里找到了一个非常相似的主题: How to store Emoji Character in MySQL Database

编辑 2: 在 DB FIDDLE 上查看我的代码:https://www.db-fiddle.com/f/jpyVfGoE7xi1Deigspiii7/0

【讨论】:

    猜你喜欢
    • 2019-03-11
    • 2016-07-16
    • 2018-09-23
    • 2013-07-10
    • 2016-08-13
    • 1970-01-01
    • 2015-07-05
    • 2017-01-31
    • 2017-03-16
    相关资源
    最近更新 更多