java.sql.SQLException:不正确的字符串值:'\xAC\xED\x00\x05sr...' 列'xxxx'
该列是 MYSQL 中的长文本,带有 utf8 字符集和 utf8_general_ci 排序规则。
怎么了?
java.sql.SQLException:不正确的字符串值:'\xAC\xED\x00\x05sr...' 列'xxxx'
该列是 MYSQL 中的长文本,带有 utf8 字符集和 utf8_general_ci 排序规则。
怎么了?
有点晚了,但您可能想知道 \xAC\xED\x00\x05sr... 是 Java 序列化的一个神奇数字。显然,您的参数正在被序列化,而不是被粘贴为字符串。
假设这些是十六进制转义码,则文本\xAC\xED\x00\x05sr...
不是有效的 UTF-8 字符串。
这是在 Groovy 中使用 PreparedStatements 时吗?如果是这样,您使用的是 GStrings 而不是普通的 Java 字符串。检查您的对象,确保您的参数符合您的预期。
将您的表格更改为 latin1 编码或 utf8mb4
ALTER TABLE your_table CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
你可以试试这个。