内容纲要
概要描述
使用 beeline -f 执行一个SQL脚本时,传入参数
详细说明
使用参数 –hivevar 来实现
- 创建存储过程
CREATE OR REPLACE PROCEDURE param(p_in1 IN STRING,p_in2 IN STRING,p_out OUT string) IS BEGIN DBMS_OUTPUT.PUT_LINE("IN param 1:"||p_in1) DBMS_OUTPUT.PUT_LINE("IN param 2:"||p_in2) p_out := 'ab' END
- 编写SQL脚本
declare out2 string begin param('${hivevar:in1}','${hivevar:in2}',out2) DBMS_OUTPUT.PUT_LINE("out param:"||out2) end
3.beeline命令调用SQL脚本
beeline -u "jdbc:hive2://172.22.33.1:10000/default" -n hive -p 123456 --hivevar in1='aa' --hivevar in2='bb' -f ./param.sql