【问题标题】:Not able to store emojis on a utf8mb mysql table无法在 utf8mb mysql 表上存储表情符号
【发布时间】:2018-03-24 18:52:02
【问题描述】:

使用 mysql 5.7 拥有此表:

CREATE TABLE `emails` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `subject` varchar(191) COLLATE utf8mb4_bin DEFAULT NULL,
  PRIMARY KEY (`id`),
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;

当我尝试插入一些表情符号时:

INSERT INTO `emails` (`from_address`, `subject`) VALUES (1, 'A????B  C????????‍????D')

我收到:

Incorrect string value: '\xF0\x9F\x98\x80B ...' for column 'subject' at row 1

为什么?如果我使用的是 utfmb?

【问题讨论】:

标签: mysql encoding utf-8 emoji


【解决方案1】:

你的连接也是utf8mb4吗?对此的详细解释可以在:https://mathiasbynens.be/notes/mysql-utf8mb4

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-01
    • 2012-12-27
    • 1970-01-01
    • 2018-12-14
    • 2017-01-12
    • 2017-05-05
    • 1970-01-01
    相关资源
    最近更新 更多