ITPub博客

首页 > 数据库 > Oracle > 该过程统计 RATING.ALL_PARAM_TABLE?表时包含的所有表的数据量

该过程统计 RATING.ALL_PARAM_TABLE?表时包含的所有表的数据量

原创 Oracle 作者:hurp_oracle 时间:2014-11-27 15:38:42 0 删除 编辑
该过程统计 RATING.ALL_PARAM_TABLE表时包含的所有表的数据量
create table RATING.gather_tab_cnt(owner varchar2(20),table_name varchar(30),count number) tablespace D_LOG_01;
第一种写法:---使用||拼变量
create or replace procedure gather_tab_cnt 
is 
cursor all_tab is select table_name from RATING.ALL_PARAM_TABLE;
v_tabname varchar2(50);
v_sql01 varchar2(2000);
v_sql02 varchar2(2000);
v_sql03 varchar2(2000);
own varchar2(40);
tb_name varchar2(40);
cnt number;


begin 
for i in all_tab loop 
v_tabname:=i.table_name;
dbms_output.put_line('v_tabname:'||v_tabname);
v_sql01:='select owner,table_name from dba_tables where table_name='''||v_tabname||'''';
execute immediate v_sql01 into own,tb_name;
dbms_output.put_line('own,tb_name:'||own||','||tb_name);
v_sql02:='select  count(*) from '||own||'.'||tb_name;
execute immediate v_sql02 into cnt;
v_sql03:='insert into RATING.gather_tab_cnt values ('''||own||''','''||tb_name||''','''||cnt||''')';
execute immediate v_sql03;
commit;
end loop;
end;
/

每二种写法:----直接用using 来指定变量

create or replace procedure gather_tab_cnt 
is 
cursor all_tab is select table_name from RATING.ALL_PARAM_TABLE where rownum<2;
v_tabname varchar2(50);
v_sql01 varchar2(2000);
v_sql02 varchar2(2000);
v_sql03 varchar2(2000);
own varchar2(40);
tb_name varchar2(40);
cnt number;


begin 
for i in all_tab loop 
v_tabname:=i.table_name;
v_sql01:='select owner,table_name from dba_tables where table_name=:v_tame';
execute immediate v_sql01  into own,tb_name  using v_tabname;
v_sql02:='select  count(*)  from '||own||'.'||tb_name;
execute immediate v_sql02 into cnt ;
dbms_output.put_line(cnt);


v_sql03:='insert into RATING.gather_tab_cnt values(:owner,:tab_name,:cnt)';
execute immediate v_sql03 using own,tb_name,cnt;
commit;
end loop;
end;
/

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29446986/viewspace-1348849/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: fetch v_cur 案例
请登录后发表评论 登录
全部评论

注册时间:2014-01-17

  • 博文量
    152
  • 访问量
    647370