Oracle 2-Tier怎样获取到存储过程的返回值?
存储过程如下,两个输入参数、两个输出参数:begin
-- Call the procedure
p_test(o_ret_code => : o_ret_code,
o_ret_msg=> : o_ret_msg,
ac_i_tid => :ac_i_tid,
ac_i_note=> :ac_i_note);
end;
LR脚本如下,
lrd_ora8_stmt(OraStm1, "BEGIN p_test(:v_code,:v_msg,'7','7777'); END;",1, 0, 0);
lrd_assign(&P1D10, 0, 0, 0, 0);
lrd_ora8_bind_placeholder(OraStm1, &OraBnd3, "1", &P1D10,LRD_BIND_BY_POS, 0, 0);
lrd_assign(&P2D11, 0, 0, 0, 0);
lrd_ora8_bind_placeholder(OraStm1, &OraBnd2, "2", &P2D11,LRD_BIND_BY_POS, 0, 0);
lrd_ora8_attr_set(OraBnd2, CHARSET_FORM, "1", -1, 0);
lrd_ora8_exec(OraSvc1, OraStm1, 1, 0,&rownum, 0, 0, 0, 0, 1);
问题是:怎么样才能获取得到:v_code,v_msg这两个参数,并在LR中打印出来? 请指教~ 你的v_code,v_msg是输入参数还是输出参数,看你这样写的的话应该是输出参数,如果是输出参数的话为什么还需要知道获取它呢?至于具体的输出,可以使用相关的输出函数lr_output_message 或其他相关函数就可以了。 多谢楼上的回复~
v_code,v_msg 是存储过程的输出值,现在要在 LR脚本中得到这两个值,如果直接使用
lr_error_message("sql result: %s", lr_eval_string("{v_code}")); 应该是不行的 输出数组,试试 还是没有解决阿
页:
[1]