在使用hive进入hive交互式命令行之后,在windows上写了一大段代码,直接粘贴进去却成了下面的样子:
hive> create table t_searchword(
> Display all 475 possibilities? (y or n)
> g,
> Display all 475 possibilities? (y or n)
> g
> )
> row format delimited fields terminated by '|' stored as textfile;
点击回车执行的话又爆出了下面的错误:
NoViableAltException(10@[])
at org.apache.hadoop.hive.ql.parse.HiveParser.type(HiveParser.java:38685)
at org.apache.hadoop.hive.ql.parse.HiveParser.colType(HiveParser.java:38442)
at org.apache.hadoop.hive.ql.parse.HiveParser.columnNameType(HiveParser.java:38126)
at org.apache.hadoop.hive.ql.parse.HiveParser.columnNameTypeList(HiveParser.java:36250)
at org.apache.hadoop.hive.ql.parse.HiveParser.createTableStatement(HiveParser.java:5217)
at org.apache.hadoop.hive.ql.parse.HiveParser.ddlStatement(HiveParser.java:2643)
at org.apache.hadoop.hive.ql.parse.HiveParser.execStatement(HiveParser.java:1653)
at org.apache.hadoop.hive.ql.parse.HiveParser.statement(HiveParser.java:1112)
at org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:202)
at org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:166)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:397)
我粘贴的sql是:
create table t_searchword( search_time string, search_text string ) row format delimited fields terminated by '|' stored as textfile;
原因是因为粘贴的sql中含有tab,把tab换成空格就行了(别问我咋换的啊,我一点点换的)。