Hive查询:使用特定数据库和显示表

时间:2015-08-05 15:18:03

标签: ruby hive rbhive

我正在尝试执行以下Hive查询:

"USE DATABASE1; SHOW TABLES"

返回以下错误:

HiveServerException: Error while compiling statement: FAILED: ParseException line 1:13 missing EOF at ';' near 'DATABASE1'

3 个答案:

答案 0 :(得分:0)

未经测试,但一些简单的数据库API不能很好地支持多个语句。查看API,尝试这样的事情:

RBHive.connect(address, port) do |connection|
  connection.execute('USE DATABASE1')
  connection.fetch('SHOW TABLES')
end

答案 1 :(得分:0)

我无法让hive重现您的错误,但这可能会有所帮助。

  1. 如果数据库不存在,您将得到一个"数据库不存在"错误。所以我把它排除在外。
  2. 不要在其周围提交引号,并确保使用";"关闭最后一行。请在此处使用此代码:

    use database1; show tables;
    

答案 2 :(得分:0)

您只需使用以下命令即可完成操作。

show tables in <YOUR_DATABASE_NAME>;