好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Oracle 統計用戶下表的數據量實現腳本

Oracle 統計用戶下表的數據量實現腳本

熱門標簽:電話機器人那種好 地圖標注的坐標點 上海網絡外呼系統 區域地圖標注怎么設置 外呼系統好點子 南通電銷外呼系統哪家強 理財產品電銷機器人 百度地圖標注飯店位置怎么 百度地圖標注注解

要想統計用戶下所有表的數據量,可以查看user_tables,此表里面是統計信息,當然這個可能不太準,要想非常精確,需要直接count表。下面的腳本有異常不中斷,可以重復執行的特點。

create table bk_count_tables
(
 owner VARCHAR2(30),
 table_name VARCHAR2(30),
 part_col varchar2(100),--分區字段
 row_s number,
 gather_time date
);
create index ind_bct_own_table on bk_count_tables(owner,table_name);
set serveroutput on
declare
cursor c_cursor is select s.OWNER, s.TABLE_NAME, col.column_name part_col
  from dba_tables s,
    (select owner,
        name,
        listagg(column_name, ',') within group(order by null) column_name
      from (select owner, name, column_name
          from dba_part_key_columns
         where owner in ('TEST')
          and object_type = 'TABLE'
          and name not like 'BIN$%'
         union all
         select owner, name, column_name
          from dba_subpart_key_columns
         where owner in ('TEST')
          and object_type = 'TABLE'
          and name not like 'BIN$%')
     group by owner, name) col
 where s.OWNER in ('TEST')
  and not regexp_like(table_name, '[0-9]{3,8}')
  and s.table_name not like '%BAK%'
  and s.table_name not like '%A2K%'
  and s.table_name not like 'BK%'
  and s.table_name not like 'BIN%'
  and s.OWNER = col.owner(+)
  and s.TABLE_NAME = col.name(+)
order by s.TABLE_NAME ;
c_row c_cursor%rowtype;
t_rows number;
begin
 for c_row in c_cursor loop
  begin
   execute immediate 'select count(*) from bk_count_tables where owner=:1 and TABLE_NAME=:2 and rownum=1' 
   into t_rows using c_row.OWNER,c_row.TABLE_NAME ;
   if(t_rows = 0) then 
    execute immediate 'select count(*) from "'||c_row.TABLE_NAME||'"' into t_rows;
    insert into bk_count_tables values(c_row.OWNER,c_row.TABLE_NAME,c_row.part_col,t_rows,sysdate);
    commit; 
    end if;
  EXCEPTION
   WHEN OTHERS THEN
   DBMS_OUTPUT.PUT_LINE(c_row.OWNER||'---'||c_row.TABLE_NAME);
   rollback; 
  end;
 end loop;
end;
/

總結

以上所述是小編給大家介紹的Oracle 統計用戶下表的數據量實現腳本,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:
  • PDO取Oracle lob大字段,當數據量太大無法取出的問題的解決辦法
  • Oracle 12c新特性之如何檢測有用的多列統計信息詳解
  • Oracle 11g收集多列統計信息詳解
  • Oracle Translate 統計字符出現的次數示例代碼
  • Oracle數據庫按時間進行分組統計數據的方法
  • oracle表空間中空表統計方法示例介紹
  • oracle數據庫下統計專營店的男女數量的語句

標簽:中衛 昭通 寧波 紹興 百色 自貢 遼源 海東

巨人網絡通訊聲明:本文標題《Oracle 統計用戶下表的數據量實現腳本》,本文關鍵詞  Oracle,統計,用戶,下表,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Oracle 統計用戶下表的數據量實現腳本》相關的同類信息!
  • 本頁收集關于Oracle 統計用戶下表的數據量實現腳本的相關信息資訊供網民參考!
  • 推薦文章