【问题标题】:Save emojis to MYSQL DB将表情符号保存到 MYSQL DB
【发布时间】:2019-08-07 19:47:21
【问题描述】:

我正在尝试将表情符号保存到我的 MYSQL 数据库中,我已按照以下步骤操作

3 个步骤

  1. ALTER TABLE 表转换为字符集 utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE COLUMN 修改评论文本字符集 utf8mb4;

  2. 设置名称 utf8mb4;

通过上述步骤,我可以将表情符号保存到数据库,但一段时间后我无法再次看到这些,我必须执行以下命令

SET NAMES utf8mb4;

然后就可以了

下面的说法有必要吗?

SET NAMES utf8mb4;

我们不能有一个永久的修复或方法来解决这个问题吗?

【问题讨论】:

    标签: mysql node.js emoji unicode-string


    【解决方案1】:

    有时您必须再次执行SET NAMES 的原因是该命令仅修改当前会话的配置。

    根据the documentation

    13.7.5.3 SET NAMES 语法

    此语句将三个会话系统变量 character_set_client、character_set_connection 和 character_set_results 设置为给定的字符集。

    如果要永久设置,需要在mysql服务启动时设置define,或者添加到你的MySQL conf文件中。

    查看https://dev.mysql.com/doc/refman/5.7/en/charset-connection.html

    或者(取决于您用于节点的 MySQL 客户端)您可以直接从您的客户端定义连接字符集。

    【讨论】:

      猜你喜欢
      • 2021-09-02
      • 2013-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-09
      • 2016-08-13
      • 1970-01-01
      相关资源
      最近更新 更多