请教哪里有错?
declare sqlstr varchar2(200);
begin
  for tb in (select table_name from temptablenames) 
    loop
    sqlstr := 'select TraceType as TraceStatus,[Category] as WayID,LProductCode as QueryBigit,Tdate as QueryDate,ProvinceName,CITYNAME from tb.table_name';
  insert into tempTData  execute immediate sqlstr;
  end loop;
end;运行报错

解决方案 »

  1.   

    declare 
       sqlstr varchar2(2000);
    begin
      for tb in (select table_name from temptablenames) 
        loop
        sqlstr := 'insert into tempTData select TraceType ,Category ,LProductCode,Tdate ,ProvinceName,CITYNAME from '||tb.table_name;
        execute immediate sqlstr;
      end loop;
      --commit;--不提交看不到结果
    end;
      

  2.   

    declare    sqlstr varchar2(2000); 
    begin  
    for tb in (select table_name from temptablenames)      loop     
    into tempTData select TraceType ,Category ,LProductCode,Tdate ,ProvinceName,CITYNAME from tb.table_name;    
    end loop;   
    --commit;--不提交看不到结果 end;
      

  3.   

    declare    sqlstr varchar2(2000);  begin  for tb in (select table_name from temptablenames)      loop      into tempTData select TraceType ,Category ,LProductCode,Tdate ,ProvinceName,CITYNAME from tb.table_name;     end loop;    
    end;