Oracle查询数据库中所有表的记录数
方法一:
首先建立一个计算函数
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
create or replace 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;
然后通过计算函数进行统计
select table_name, count_rows(table_name) nrows from user_tables
获取要统计的值
方法二:
select t.table_name,t.num_rows from user_tables t
查看记录数,但是num_rows存储的是上次分析后的值,不准确,要使用该方法,必须分析后才可以试用
完成的语句为
declarev_tName varchar(50);v_sqlanalyze varchar(500);v_num number;v_sql varchar(500);cursor c1 isselect table_name from user_tables;beginopen c1;loopfetch c1 into v_tName;if c1%found then v_sqlanalyze :='analyze table '||v_tName||' estimate statistics';execute immediate v_sqlanalyze;v_sql := 'select NUM_ROWS from user_tables where table_name =upper('''||v_tName||''')'; execute immediate v_sql into v_num;dbms_output.put_line('表名: '||v_tName||' 行数: '||v_num);elseexit;end if;end loop;end;
转载于:https://www.cnblogs.com/langtianya/p/6526415.html
Oracle查询数据库中所有表的记录数相关推荐
- 查询数据库中所有表的记录数
查询数据库中所有表的记录数 方法1 直接查询,方法简单,但达不到想要的效果,记录数稍微多一点,总数就偏高 方法2 拼接 select count(主键id) 语句 方法1 直接查询,方法简单,但达不到 ...
- mysql查询一个数据库所有表的记录数,mysql 查看数据库中所有表的记录数
mysql使用select count(*) from table_name可以查询某个表的总记录数.想快速的知道数据库中所有表的记录数信息怎么办?如果使用mysql的版本在5.0及以上,可以通过查询 ...
- mysql查看当前库所有表记录数_mysql中查看数据库中所有表的记录数
我们继续我们的博客创建. 在一个项目日常的运行中,常常会为服务过慢而导致用户体验不好,在这一点上,常常需要进行性能优化,而如果没有针对性的对某一个 模块进行优化,那么效果往往是不理 ...
- MySQL——查询数据库、数据表总记录数
方法一 information_schema information_schema数据库是MySQL系统自带的数据库,它提供了数据库元数据的访问方式.information_schema就记录了数据 ...
- 统计sql server数据库中所有表的记录数
因工作需要查看库里每个表中的记录数,逐表查询太辛苦,故写一过程处理如下: --基本思路为:到系统表查出表名:然后逐表构造sql语句,查询记录数并插入临时表 --创建临时表,保存数据 create ...
- 查询数据库中所有表的行数(sqlserver 2000)
方法一: create proc ss as set nocount on create table TableSpace ( TableName varchar(50), RowsCount c ...
- oracle 查询数据库中所有表名
SELECT* FROMall_tables WHEREOWNER = '实例名称' ORDER BY table_name
- mysql 查看某数据库中所有表的行数,information_schema.tables不准确。count(*)拼接准确。
mysql使用information_schema.tables统计表的行数,统计结果和count(*)的结果不一样. select table_name,table_rows from inform ...
- Oracle查询数据库中所有的表名称
1.查询数据库中所有的表名称和每张表所对应的数据条数 select t.table_name,t.num_rows from user_tables t; 此处需要注意的是:在查询每张表所对应的数据条 ...
最新文章
- Subversion客户端认证凭证缓存总结
- mongodb 事务_MongoDB 事务 — 基础入门篇
- 使用Docfx生成项目文档
- 样机模型尺寸怎么改_土耳其五代机全尺寸样机模型首次亮相巴黎航展,这不是玩票,是一架认真设计的五代机!...
- 三星S5 电信版(G9009D)Android 5.0系统,root教程【亲测可行】
- 【行为型模式】《大话设计模式》——读后感 (10)无尽加班何时休?——状态模式...
- kudu大量数据更新_i2Stream提升异构数据库数据的互联互通
- 浅谈servlet与jsp的关系
- access如何保存小数点后_如何把示波器当记录仪用
- 引人注目的意思是什么,怎么用引人注目造句,引人注目的近义词有哪些?
- HP刀片带外管理系统OA各功能实例示范
- DarkMode 设置关闭 iOS 13, 适用于 XCode 11, XCode 10
- Partial Dependence Plots 从原理到实战
- 96---Python 绘制费马螺旋线
- 共享软件作者怎样才能月入万
- 北京大学计算机社团,北京大学爱心社团
- Word控件Spire.Doc 【图像形状】教程(11): 如何在 C# 中为 Word 中的图像设置 Transeperant 颜色
- linux网桥实现代码走读
- img 标签 引入svg图片
- Linux 0.11-重新设置idt和gdt-08