gpt4 book ai didi

java - JDBC4 Hive 驱动程序错误 : Only AEQuery is supported

转载 作者:行者123 更新时间:2023-12-01 09:02:27 25 4
gpt4 key购买 nike

我正在尝试执行一个简单的 hiveql 语句,如下所示:insert into table1 select * from table2。

两个表具有相同的架构,但存储选项不同,即 table1 存储为 avro,table2 存储为 parquet。

我将 jdbc4 驱动程序复制到项目位置,并且可以获得与 hiveserver2 的连接,没有任何问题。但是,当我尝试执行上述查询时,出现以下异常。

Only AEQuery is supported.
java.sql.SQLException: Only AEQuery is supported.
at com.cloudera.hive.hive.querytranslation.HiveQueryTranslator.translate(HiveQueryTranslator.java:86)
at com.cloudera.hive.hive.querytranslation.HiveQueryTranslator.translate(HiveQueryTranslator.java:74)
at com.cloudera.hive.hivecommon.dataengine.HiveJDBCDSIExtQueryExecutor.execute(HiveJDBCDSIExtQueryExecutor.java:168)
at com.cloudera.hive.jdbc.common.SStatement.executeNoParams(SStatement.java:2719)
at com.cloudera.hive.jdbc.common.SStatement.execute(SStatement.java:549)
at py.com.personal.hive.HiveDataLoad.insert(HiveDataLoad.java:46)
at InsertTest.testHiveInsert(InsertTest.java:23)
Caused by: com.cloudera.hive.support.exceptions.ErrorException: Only AEQuery is supported.

有人可以告诉我我做错了什么或者如何解决这个问题吗?

这是我的代码:

if (this.conn == null) {
this.conn = this.cm.connect();
}

Statement stmt = this.conn.createStatement();
String sql = "INSERT INTO " + toTable + " SELECT * FROM " + fromTable;
stmt.execute(sql);
stmt.close();

谢谢。

最佳答案

问题是您缺少关键字 TABLE 从 isert 到命令。

  String sql = "INSERT INTO **TBALE** " + toTable + " SELECT * FROM " + fromTable;

关于java - JDBC4 Hive 驱动程序错误 : Only AEQuery is supported,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41568407/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com