0

我创建了一个参数列表并添加了一些参数,但是当我想检查参数及其值是否已添加时,它无法获取我刚刚添加的值。代码有什么问题:

IF NOT ID_NULL(GET_PARAMETER_LIST('RPT')) THEN
  DESTROY_PARAMETER_LIST('RPT');
END IF;
v_param_list := CREATE_PARAMETER_LIST('RPT');

ADD_PARAMETER(v_param_list,'PAR_WHERE',TEXT_PARAMETER,'WHERE ID = 1010');

BEGIN
   GET_PARAMETER_ATTR(v_param_list,'PAR_WHERE',v_param_type,v_temp);
   message('PAR_WHERE:'||v_temp);
EXCEPTION WHEN OTHERS THEN
   message('Couldn''t get the value for : PAR_WHERE');
END; 

如何检索参数列表中的所有参数和值?

4

2 回答 2

0

我没有看到你在哪里定义v_param_typev_temp. v_param_type需要是数字和v_tempvarchar2,它们都是out参数。

ParamList不幸的是,如果事先不知道其中包含的参数名称,就无法从中检索所有参数。

于 2013-02-06T21:50:18.040 回答
0

正如 GriffeyDog 所说,没有办法检索参数列表项。我有同样的问题并通过使用数据库解决了它。唯一的方法是使用变通方法。我的解决方案是在参数列表中传递一个 ID。这个 ID 代表一个 pl/sql 集合。一旦检索到 ID,就很容易获得所有集合键或值。如果您需要更多详细信息,请告诉我,因为代码已有多年历史......

于 2013-03-05T20:23:11.367 回答