蜂巢查询错误



我正在尝试使用hiveconf参数将选项卡分离为蜂巢文本文件表,如下 -

load data local inpath '${hiveconf:TEXT_FILE}' into table ${hiveconf:HIVE_TABLE};

但是,当我运行此.HQL文件时,如下

hive -hiveconf DB=$DB TEXT_FILE="$text_file_name" HIVE_TABLE=$HIVE_TABLE -f file_load.hql

我得到以下错误 -

NoViableAltException(16@[202:1: tableName : (db= identifier DOT tab= identifier -> ^( TOK_TABNAME $db $tab) |tab= identifier -> ^( TOK_TABNAME $tab) );])
        at org.antlr.runtime.DFA.noViableAlt(DFA.java:158)
......
......
FAILED: ParseException line X:YY cannot recognize input near '$' '{' 'hiveconf' in table name

我在Google上搜索,并了解到这是由于Hive关键字造成的,但是我已经成功地创建了该表,并且当我通过硬编码文件名和表名称加载文件时,然后加载了数据!请在这里帮我!

谢谢!

您错误地传递上下文变量。它应该是每个变量之前的-hiveconf

hive -hiveconf DB=$DB -hiveconf TEXT_FILE="$text_file_name" -hiveconf HIVE_TABLE=$HIVE_TABLE -f file_load.hql

最新更新