我已经知道表函数的逗号(另一个问题是不同的)。但这里有不同的情况。我认为这是Oracle的缺陷。如果我的问题有解决方案,我想学习。
当我使用varchar值时,ok,但是当我尝试使用数字值时,得到这样的错误;
ORA-20001:逗号分隔列表在3附近无效
dbms_utility.comma_to_table('abc,def', l_tablen, l_tab); OK
dbms_utility.comma_to_table('12,13', l_tablen, l_tab); NOT OK
错误: ORA-20001:逗号分隔列表在3附近无效
DECLARE
l_tab dbms_utility.uncl_array;
l_tablen number;
v_var number;
BEGIN
dbms_utility.comma_to_table('1214,1547,1219', l_tablen, l_tab);
dbms_output.put_line('TABLE LENGTH : '|| l_tablen);
dbms_output.put_line('TABLE COUNT : '|| l_tab.COUNT);
for i in 1..l_tablen
loop
dbms_output.put_line(l_tab(i));
end loop;
END;