XMLELEMENT()函数无法将变量的值识别为标记名称

时间:2013-12-20 11:30:02

标签: oracle11g

我在SELECT查询中使用XMLELEMENT(tagname,value)。它无法识别变量的值。而不是这个,它将变量名称作为标记名称。

//离

l_0_l   := t_array(l_index) || '-ANI-II'; -- runtime value is "A-ANI-II"

SELECT (XMLELEMENT(l_ii, NULL) ||'') 
  INTO l_temp 
  FROM dual;

dbms_output.put_line(l_temp );

expected output :<A-ANI-II/>
acutal output :<L_II/>

我的问题:如何在运行时使用变量提供标记名称?

1 个答案:

答案 0 :(得分:4)

感谢为此问题尝试解决方案的人。

最后,我解决了我的问题。

“evalname()”解决了我的问题。此方法将该变量的值返回给XMLELEMENT()。

SELECT (XMLELEMENT(evalname(l_ii), NULL) ||'') 
  INTO l_temp 
  FROM dual;

Now, I am getting output like :<A-ANI-II/>