ConvertJSONToSql正在寻找IS_AUTOINCREMENT

时间:2016-07-28 14:33:56

标签: hortonworks-data-platform apache-nifi hortonworks-sandbox

我使用ConvertJSONToSql将每个Json流文件转换为sql,但是我一直收到此错误

Could not find IS_AUTOINCREMENT in [table_cat, table_schem, table_name, column_name, data_type, type_name, column_size, buffer_length, decimal_digits, num_prec_radix, nullable, remarks, column_def, sql_data_type, sql_datetime_sub, char_octet_length, ordinal_position, is_nullable, scope_catalog, scope_schema, scope_table, source_data_type, is_auto_increment]

我不知道原因。我刚刚在hive中创建了我的表,如下所示:

create table ... 
... 
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE

1 个答案:

答案 0 :(得分:1)

这与Hive-13528有关。下面复制了JIRA描述的完整性。

  

如文档所述,从DatabaseMetaData(https://docs.oracle.com/javase/7/docs/api/java/sql/DatabaseMetaData.html#getColumns(java.lang.String,%20java.lang.String,%20java.lang.String,%20java.lang.String))返回getColumns()应返回一个包含几列的ResultSet,其中包括一个名为" IS_AUTOINCREMENT"用于描述属性是否为自动增量。   但是,在Hive实现中,该列名为" IS_AUTO_INCREMENT" (如文件service / src / java / org / apache / hive / service / cli / operation / GetColumnsOperation.java第107行所述。)

此时您的选择是等待Hive修复程序推出并应用它,或者您可以使用修改后的ConvertJSONToSQL处理器构建自己的nifi-standard-nar软件包。 ' IS_AUTOINCREMENT' name在该处理器中被硬编码。