2013-12-20 107 views
1

我在SELECT查詢中使用了XMLELEMENT(tagname,value)。它不能識別變量的值。代替這個,它將變量名稱作爲標籤名稱。XMLELEMENT()函數無法將變量的值識別爲標記名

//前

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/> 

像我的問題:我如何提供使用變量在運行時,標籤的名字嗎?

回答

3

謝謝誰試過這個問題的解決方案。

最後,我解決了我的問題。

「evalname()」已解決我的問題。此方法將該變量的值返回到XMLELEMENT()。

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

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