【发布时间】:2016-04-09 11:30:00
【问题描述】:
我想在数据库中插入一个特殊字符,如 ✪。
当我在 Java 代码中这样做时:
String message = "✪";
preparedStatement = connection.prepareStatement("INSERT INTO `messages` (`message`) VALUES (?)");
preparedStatement.setString(1, message);
preparedStatement.executeUpdate();
它只是插入一个? 而不是✪。但是当我在 phpMyAdmin 上执行 SQL 命令时,它可以正常工作并插入 ✪。
数据库中的列message 的类型为varchar(2048),排序规则为utf8_general_ci。
并且java项目的文本文件编码也是UTF-8。
【问题讨论】:
-
你试过这个吗:stackoverflow.com/a/3836303/2779842?这应该可以解决编码问题
-
谢谢!我一定跳过了那个。现在它可以工作了:)
标签: java mysql encoding insert special-characters