create or replace procedure getSQLI(
tablename varchar2
) is
tn varchar2(20000) ;
sqls varchar2(20000) ;
cl varchar2(20000);
l_Array CuxStrToArray;
StrSplit Varchar2(1):=‘,’;
begin
l_Array := StrToArray( tablename,StrSplit);
for i in 1…l_Array.count --1到(l_Array.count)
loop --循环
tn:= upper(trim(l_Array(i)));
sqls:= 'SELECT wm_concat(column_name)
FROM USER_TAB_COLUMNS
WHERE table_name = upper('''||tn||''') ';
EXECUTE IMMEDIATE sqls into cl;
sqls :=' insert into '||tn||'_xxhb ('||cl||') select '||cl||' from '||tn||' ; ';
dbms_output.put_line(sqls);
End loop;
end getSQLI;