java.sql.SQLException: 字符串值不正确: '\xF0\x9F\x91\xBD\xF0\x9F...'

121

我有以下字符串值:“walmart obama”。

我正在使用MySQL和Java。

我遇到了以下异常:`java.sql.SQLException: Incorrect string value: '\xF0\x9F\x91\xBD\xF0\x9F...'

这是我试图插入的变量:

var1 varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL`

我正在尝试使用preparedStatement插入"walmart obama"的Java代码。因此,我正在使用setString()方法。

看起来问题在于值的编码。我该如何解决这个问题?以前我使用Derby SQL,但是值最终只变成了两个方块(我认为这是空字符的表示方式)

非常感谢任何帮助!


似乎是 https://dev59.com/qGgu5IYBdhLWcg3w8bhs#10959780 的重复问题。 - Joshua Davis
创建数据库时,您可以像这样指定字符集和排序规则:CREATE DATABASE db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - Max Peng
11个回答

-4

此外,数据类型可以使用blob代替varchar或text。


1
你不想那样 - ECostello

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接