Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java mysql中字符\u结果\u集为空_Java_Mysql_Hibernate_Utf 8 - Fatal编程技术网

Java mysql中字符\u结果\u集为空

Java mysql中字符\u结果\u集为空,java,mysql,hibernate,utf-8,Java,Mysql,Hibernate,Utf 8,我正在使用mysql数据库。数据库是amazone RDS数据库 执行此查询时:显示全局变量,如“%character%” 我得到以下结果: 但是当我执行这个查询时:显示变量,比如“%character%”我得到这个结果: 如您所见,字符集结果为空。我尝试了以下查询,但未更改空值: ALTER DATABASE myDB CHARACTER SET utf8; ALTER DATABASE myDB CHARACTER SET utf8 COLLATE utf8_general_ci; AL

我正在使用mysql数据库。数据库是amazone RDS数据库

执行此查询时:
显示全局变量,如“%character%”
我得到以下结果:

但是当我执行这个查询时:
显示变量,比如“%character%”我得到这个结果:

如您所见,字符集结果为空。我尝试了以下查询,但未更改空值:

ALTER DATABASE myDB CHARACTER SET utf8;
ALTER DATABASE myDB CHARACTER SET utf8 COLLATE utf8_general_ci;
ALTER DATABASE myDB DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
SET CHARACTER_SET_RESULTS=UTF8
SET  NAMES 'utf8';
SET CHARACTER SET 'utf8';
SET session CHARACTER_SET_RESULTS = utf8;
据我所知,第二个查询返回会话参数。这会影响我得到的结果吗

我有两台机器。我使用eclipse运行应用程序的开发机器(这是一个使用hibernate的java应用程序)和另一个,部署机器。在开发机器上一切都很好,但在部署机器上有时我会得到????或从数据库获取数据时的其他奇怪字符。 两台机器都连接到同一个数据库,并且数据在数据库中存储良好。 连接url也是
jdbc:mysql://myDB:3306/myApp?autoReconnect=true&useUnicode=true&;createDatabaseIfNotExist=true&;characterEncoding=utf-8


有什么想法会导致这种情况吗?

多个问号通常来自:

  • 您正在插入
中文(或任何非西欧文本)
  • 您说过
    设置名称utf8
    来声明客户端字节是utf8编码的(正确)

  • 但是表列被声明为
    字符集1
    多个问号通常来自:

    • 您正在插入
  • 中文(或任何非西欧文本)
  • 您说过
    设置名称utf8
    来声明客户端字节是utf8编码的(正确)
  • 但是表列被声明为
    字符集1
    SELECT col, HEX(col) FROM ...