我在使用
我有以下字符串:
我正在尝试使用
我的连接字符串如下:
mysql-connector-java-5.0.8
将有效的UTF8字符串插入到Percona MySQL数据库中时遇到了问题。我使用的是jdk1.8.0_05
,这是一个控制台应用程序。我有以下字符串:
Nüvifone G60
。我正在尝试使用
PreparedStatement
的setString
方法将其插入到数据库中。我的连接字符串如下:
jdbc:mysql://host:post/schema?useUnicode=true&characterEncoding=UTF-8
我的my.cnf
包含以下代码:[client]
default-character-set = utf8
[mysql]
default-character-set = utf8
[mysqld]
init-connect='SET NAMES utf8'
collation_server=utf8_unicode_ci
character_set_server=utf8
我试图插入数据的表编码被设置为utf8_general_ci
。
我收到的错误信息是:java.sql.SQLException: 该列的值无法显示:'\xC3\xBCvifo...'
使用System.out.println
将字符串输出到控制台时,字符串可以正确显示。
我一整天都在尝试解决这个问题,搜索了数十个网站也没有结果。非常感谢任何帮助。
提前感谢大家。
SHOW CREATE TABLE tablename
命令,并确认您要插入字符串的实际列的CHARACTER SET
。如果我在一个表(和数据库)中定义一个列为varchar(255) CHARACTER SET ascii
,而该表是完全 utf8 的,则可以重新创建您的问题。如有必要,请编辑您的问题并发布SHOW CREATE TABLE
的结果。 - Gord Thompson