2

我写信询问我的过程中的一个问题:

我有一个 Kudu 表,当我尝试使用 Impala JDBC 驱动程序通过 datastage(11.5 或 11.7)插入一个大小大于 500 个字符的新行时,我收到此错误:

致命错误:连接器未能执行语句:INSERT INTO default.tmp_consulta_teste(idconsulta,idcliente,idinstituicao,idunidadeinst,datahoraconsulta,desccpfcnpj,idcentral,idcontrato,idusuario,valorconsulta,descretornoxml,idintegracaosistema,nomeservidor)值(?,?, , ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)。报告的错误是:[SQLSTATE HY000] java.sql.SQLException: [Cloudera]ImpalaJDBCDriver Error getting the parameter data type: HIVE_PARAMETER_QUERY_DATA_TYPE_ERR_NON_SUPPORT_DATA_TYPE。

**************我该如何解决?我需要加载该信息。**********

4

1 回答 1

0

我有类似的问题,我收到的错误是:

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw 
exception [Request processing failed; nested exception is  
org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; 
uncategorized SQLException for SQL [update service set comments =? where service_name 
="Zzzzz";]; SQL state [HY000]; error code [500352]; [Simba] 
[ImpalaJDBCDriver](500352) Error getting the parameter data type: 
HIVE_PARAMETER_QUERY_DATA_TYPE_ERR_NON_SUPPORT_DATA_TYPE; nested exception is 
java.sql.SQLException: [Simba][ImpalaJDBCDriver](500352) Error getting the parameter 
data type: HIVE_PARAMETER_QUERY_DATA_TYPE_ERR_NON_SUPPORT_DATA_TYPE] with root cause

我在以下链接中提到了最后一个答案: https ://community.cloudera.com/t5/Support-Questions/HIVE-PARAMETER-QUERY-DATA-TYPE-ERR-NON-SUPPORT-DATA-TYPE/td- p/48849

我做了以下事情:

1.确保表是 Kudu 表。

  1. 为了使用 PreparedStatement而不是 jdbcTemplate.query 我做了jdbcTemplate.batchUpdate ,在 PreparedStatement 中做了SetObject

    jdbcTemplate.batchUpdate(UpdateComment, new BatchPreparedStatementSetter(){
    
        @Override
        public int getBatchSize() {
    
            return 1;
        }
    
        @Override
        public void setValues(PreparedStatement ps, int i) throws SQLException {
            ps.setObject(1, comments);
    
        }
    
    });
    
于 2019-11-07T10:16:51.950 回答