title: Multiple SQL statements in FORALL loop
body: <p>I want to insert in Different tables with only single FORALL Loop in oracle.but FORALL don't support it.any idea how can i do it??</p>
  
  <pre><code>   create or replace PROCEDURE test IS
        TYPE avl_web_details IS TABLE OF available_web_details%ROWTYPE;
        var_avl_web_details avl_web_details := avl_web_details();
        UNIONTABLE VARCHAR2(30000);
        TYPE RepCurTyp IS REF CURSOR; 
        Rep_cv RepCurTyp; 
     BEGIN
        UNIONTABLE := '';
    execute immediate 'update tbl_used_webuda1 set flag=1';
    FOR tbl IN (SELECT tablename FROM tbl_used_webuda1 where flag=1)
        LOOP             
      UNIONTABLE := UNIONTABLE || 'select *' || ' from ' || tbl.tablename || 'union all ';     
  END LOOP;
  
         IF (LENGTH(UNIONTABLE) &gt; 10) THEN
        UNIONTABLE := '( ' || SUBSTR(UNIONTABLE,1, length(UNIONTABLE)-10) || ' ) ';            
       end if;
        OPEN Rep_cv FOR 'select from_unixtime("5mintime") as "5mintime",username,host,src_zone,domain,dst_zone,content,category,url,hits ,bytes,appid ,application,categorytype,usergroup from'|| uniontable;
  LOOP 
      FETCH Rep_cv BULK COLLECT INTO var_avl_web_details LIMIT 200000;
          FORALL i IN 1..var_avl_web_details.COUNT
              insert into available_web_details values var_avl_web_details(i);
      insert into web_ap_ca_co_do_ur_us_5min values(ts ,var_avl_web_details(i).application ,var_avl_web_details(i).category ,var_avl_web_details(i).content ,var_avl_web_details(i).domain ,var_avl_web_details(i).dst_zone ,var_avl_web_details(i).url ,var_avl_web_details(i).username ,var_avl_web_details(i).hits,var_avl_web_details(i).bytes,var_avl_web_details(i).appid);     
      insert into web_user_5min values(ts,var_avl_web_details(i).username,var_avl_web_details(i).hits,var_avl_web_details(i).bytes,var_avl_web_details(i).appid);
      EXIT WHEN Rep_cv%NOTFOUND; 
  end loop; 
  close rep_cv; 
  end;**
  </code></pre>