进入hplsql-0.3.xx的安装文件中
执行./ hplsql就会显示命令行的用法
在使用命令的时候,通常查看一下帮助,帮助会给出命令的使用方法。
hplsql的用法
-d,–define
指定变量名及变量值,给要执行的HQL语句传递变量。
还有如下效果一样的用法:
–hiveconf <property=value>
–hivevar <key=value>
具体示例:
./hplsql -e "PRINT a || ', ' || b" -d a=Hello -d b=zhangsan
./hplsql -e "PRINT a || ', ' || b" --hiveconf a=Hello --hiveconf b=lisi
./hplsql -e "PRINT a || ', ' || b" --hivevar a=Hello --hivevar b=wangwu
-e <quoted-query-string>后面跟查询语句
./hplsql -e "SELECT * FROM database.dual"
./hplsql -e "PRINT 'hello,zhangsan'"
–f <filename>
与hive –f 的使用一样,都是执行文件中保存的HQL语句。
./hplsql -f hqlfile.sql
-trace,–trace
打印出debug信息。
–main <procname>
只执行指定的函数、指定的存储过程内的语句。
如下是一个hql文件,如果用-main指定了存储过程P_PROCEDUER,那么就只执行该存储过程,不执行PRINT语句。
P_PROCEDUER.sql文件中的HQL语句如下:
CREATE PROCEDURE P_PROCEDUER(IN input STRING)
BEGIN
SET result = 'hello, zhangsan';
PRINT result || ' ' || input;
END;
PRINT '你好,张三! ';
CALL P_PROCEDUER(' call P_PROCEDUER ');
PRINT '你好,李四! ';
hplsql执行该文件中的-mian指定的存储过程P_PROCEDUER
./hplsql -f P_PROCEDUER.sql -main P_PROCEDUER
hello, zhansan!