首页 > 解决方案 > MySQL 5.7 与 MySQL 8 中的 UTF-8 Unicode 字符

问题描述

我们最近经历了从 MySQL 5.7 到 MySQL 8 的迁移。在 MySQL 5.7 上,我们只是在连接字符串中添加了“useUnicode=true”来使 unicode 字符正常工作。在 MySQL 8 上,由于 unicode 字符,我们不断遇到异常。我们在后端使用 Java。例子:

Incorrect string value: '\xC2\x80\xC2\x99t ...' for column 'subject' at row 1 

任何人都可以对此有所了解吗?

标签: javamysqljdbc

解决方案


试试下面给出的查询,它将更新对 Unicode 的支持。它曾经与早期版本的 MySQL 一起工作,我不确定 MySQL 8。

SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci;

还要检查character-set-server = utf8mb4my.cnf 和useUnicode=true您的 JDBC 连接。


推荐阅读