(Oracle)数据量统计存储过程

Posted ThinkDifferent

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(Oracle)数据量统计存储过程相关的知识,希望对你有一定的参考价值。

本过程适用于Oracle数据量统计。

create or replace procedure SP_GET_TAB_COUNT
 as
   v_tableName HDSD_TJ.Tablename%type;
   v_tableCount  HDSD_TJ.Tablecount%type;
   v_tmp varchar2(500);
   v_tmp2 varchar2(500);
   v_tmp3 varchar2(500);
   cursor cur_tab is  select tableName from HDSD_TJ;
 begin
   open  cur_tab;
   loop
     fetch cur_tab into  v_tableName;
     exit when  cur_tab%notfound;
        v_tmp:=analyze table  ||v_tableName||  estimate statistics;
        execute immediate v_tmp;
        v_tmp2:= select num_rows  from tabs where table_name =‘‘‘||v_tableName||‘‘‘‘;
        execute immediate v_tmp2 into  v_tableCount;
        v_tmp3:=update HDSD_TJ set Tablecount=||v_tableCount|| where tableName =‘‘‘||v_tableName||‘‘‘‘;
        execute immediate v_tmp3;
   end loop;
   close  cur_tab;
 end;

-- Create table
create table HDSD_TJ
(
  tablename  VARCHAR2(100),
  tablecount NUMBER(12)
)

 

以上是关于(Oracle)数据量统计存储过程的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 数据量非常大(上亿)时,使用存储过程中的游标返回分页查询的10条记录非常耗时,请问如何优化?

oracle存储过程循环插数据

oracle简单存储过程的编写

oracle 存储过程中查询结果无法赋值到变量,请指教

用oracle存储过程将一张表的数据查出插入另一张表

Oracle 整表导出为update语句(存储过程实现)