Oracle游标-循环查询表中数据(表名),并执行


Oralce 表中存有一个字段,该字段存储表名,要把该表中的所有表名查询出来(即表名结果集),且执行结果集from 表名结果集:

declare
  v_ccount varchar2(100);
  --定义一个游标变量
  cursor c_job is
  --查询该表中的所有表名
    select tablename from tbname;
  c_row c_job%rowtype;
begin
  --循环待处理数据,即以上查出的结果集
  for c_row in c_job loop
    ---执行语句 from 循环的表名   并插入
    execute immediate 'select count(1)  from ' || c_row.tablename
      into v_ccount;
    insert into tb_count
      (tbname2, ccount)
    values
      (c_row.tablename, v_ccount);
    --dbms_output.put_line(v_ccount);
  end loop; --循环结束
  commit;
end;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM