Java MySQL:将特殊字符插入数据库

Posted

技术标签:

【中文标题】Java MySQL:将特殊字符插入数据库【英文标题】:Java MySQL: Insert special charactar into database 【发布时间】: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。

【问题讨论】:

你试过这个吗:***.com/a/3836303/2779842?这应该可以解决编码问题 谢谢!我一定跳过了那个。现在它可以工作了:) 【参考方案1】:

正如@Mathisca 指出的那样,我已将参数?characterEncoding=UTF-8 添加到JDBC URL。

【讨论】:

以上是关于Java MySQL:将特殊字符插入数据库的主要内容,如果未能解决你的问题,请参考以下文章

如何将₹(特殊字符)插入数据库

MySQL 在特殊字符处截断字符串

怎么将带特殊字符的字符串存入sqlserver的某个字段

mysql 有几个特殊字符的函数

怎么将带特殊字符的字符串存入sqlserver的

如何使用mysql insert 插入特殊字符?