oracle查詢所有表的記錄數

2021-08-09 19:11:08 字數 930 閱讀 4233

方法一:

select t.table_name,t.num_rows from all_tables t

檢視記錄數,但是num_rows不是實時的,儲存的是上次分析後的值,不準確,要使用該方法,必須分析後才可以使用。

方法二:

1、建立函式

create

orreplace function count_rows(table_name in varchar2,

owner in varchar2 default

null)

return number

authid current_user

is num_rows number;

stmt varchar2(2000);

begin

if owner is

null

then

stmt := 'select count(*) from "'||table_name||'"';

else

stmt := 'select

count(*) from

"'||owner||'"."'||table_name||'"

';

end if;

execute immediate stmt into num_rows;

return num_rows;

end;

2、通過函式計算

select table_name, count_rows(table_name)  nrows from all_tables order

by nrows desc

Oracle查詢資料庫中所有表的記錄數

oracle查詢資料庫中所有表的記錄數 查詢庫中的表名和表中記錄數 select t.table name,t.num rows from user tables t 查詢庫中記錄總數 select sum a.num rows from select t.table name,t.num rows...

Oracle查詢資料庫中所有表的記錄數

方法一 首先建立乙個計算函式 1 create orreplace function count rows table name in varchar2 2 owner in varchar2 default null 3 return number 4 authid current user5is...

Oracle查詢所有表

select fromall tab comments 查詢所有使用者的表,檢視等 select fromuser tab comments 查詢本使用者的表,檢視等 select fromall col comments 查詢所有使用者的表的列名和注釋.select fromuser col co...