Oracle查看某个用户下的所有空表

今天在群里有人问如何查看某个用户下的所有空表,有人回答是写PL/SQL

SQL> DECLARE

v_table tabs.table_name%TYPE;

v_sql VARCHAR2(888);

v_q NUMBER;

CURSOR c1 IS

SELECT table_name tn FROM tabs;

TYPE c IS REF CURSOR;

c2 c;

BEGIN

DBMS_OUTPUT.PUT_LINE('以下为空数据表的表名:');

FOR r1 IN c1 LOOP

v_table :=r1.tn;

v_sql :='SELECT count(*) q FROM '||v_table||' where rownum = 1';

OPEN c2 FOR v_sql;

LOOP

FETCH c2 INTO v_q;

EXIT WHEN c2%NOTFOUND;

IF v_q=0 THEN

DBMS_OUTPUT.PUT_LINE(v_table);

END IF;

END LOOP;

CLOSE c2;

END LOOP;

EXCEPTION

WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('Error occurred');

END;

/

PL/SQL 过程已成功完成。

SQL> set serveroutput on

SQL> /

以下为空数据表的表名:

T_FILE_INFO_RAW

T_DOSSIER_INFO_RAW

T_FONDS_INFO_RAW

其实不用那么麻烦,而且表如果很多的话,执行会很慢

先收集下用户的信息

SQL> exec dbms_stats.gather_schema_stats(user);

PL/SQL 过程已成功完成。

再查看user_tables数据字典

SQL> exec dbms_stats.gather_schema_stats(user);

PL/SQL 过程已成功完成。

-------------------- ----------

T_FILE_INFO_RAW 0

T_DOSSIER_INFO_RAW 0

T_FONDS_INFO_RAW 0

验证结果是否准确

SQL> select count(*) from T_FILE_INFO_RAW;

COUNT(*)

0

SQL> select count(*) from T_DOSSIER_INFO_RAW;

COUNT(*)

0

SQL> select count(*) from T_FONDS_INFO_RAW;

COUNT(*)

0

向T_FONDS_INFO_RAW表插入几条数据,在查看下

SQL> insert into T_FONDS_INFO_RAW (FILE_SUM) values(1111);

已创建 1 行。

SQL> insert into T_FONDS_INFO_RAW select * from T_FONDS_INFO_RAW;

已创建 1 行。

SQL> /

已创建2行。

SQL> /

已创建4行。

SQL> commit;

提交完成。

在收集下用户的信息

SQL> exec dbms_stats.gather_schema_stats(user);

PL/SQL 过程已成功完成。

SQL> select table_name,num_rows from user_tables;

TABLE_NAME NUM_ROWS

------------------------------ ----------

T_FILE_INFO_RAW 0

T_DOSSIER_INFO_RAW 0

T_FONDS_INFO_RAW 8

SQL> select count(*) from T_FONDS_INFO_RAW;

COUNT(*)

8

这种方法要比写PL/SQL方便得多

oracle 查出所有空表,Oracle查看某个用户上的所有空表相关推荐

  1. spool命令、创建一个表,创建并且copy表,查看别的用户下的表,rowid行地址 索引的时候使用,表的增删改查,删除表,oracle的回收站

      1.spool 命令 spool "D:\test.txt" spool off SQL> host cls 2.创建一个表 SQL> --条件(1):有创 ...

  2. Oracle数据库如何查看当前用户角色权限及默认表空间

    http://database.51cto.com/art/201108/280474.htm 在Oracle数据库操作中,有时候我们需要查看当前用户的一些信息,包括用户拥有的角色权限信息.用户表空间 ...

  3. spool命令、创建一个表,创建而且copy表,查看别的用户下的表,rowid行地址 索引的时候使用,表的增删改查,删除表,oracle的回收站...

      1.spool命令 spool "D:\test.txt" spool off SQL> host cls 2.创建一个表 SQL> --条件(1):有创建 ...

  4. oracle查出连续5行,Oracle期末考试复习题2

    复习题 一.填空题: 1. Oracle EnterpriseManager是一个基于 B/S的框架系统. 2.Oracle数据库的存储结构分为物理结构和逻辑结构. 3.在游标或者游标变量打开后还没有 ...

  5. uniapp实现表单提交带图片上传 在做表单提交的时候,我们可能面临有图片上传,放在原生的html就好解决,form标签加上

    enctype="multipart/form-data" uniapp微信小程序 1.原图 页面部分 <form :model="data" @subm ...

  6. Oracle常用数据字典表 Oracle常用数据字典表 查看当前用户的缺省表空间

    Oracle常用数据字典表 Oracle常用数据字典表 查看当前用户的缺省表空间 SQL>select username,default_tablespace from user_users; ...

  7. oracle 统计信息字典表,Oracle数据字典表查询

    /*显示当前用户*/ show user 在sql plus中可用,在pl sql中不可用 /*查看所有用户名*/selectusername,user_id,createdfromall_users ...

  8. oracle常见表,ORACLE常见视图和表整理

    v$database 数据库信息 v$datafile 数据文件信息 v$controlfile 控制文件信息 v$logfile 重做日志信息 v$instance 数据库实例信息 v$log 日志 ...

  9. oracle怎么查询表空间信息,查询Oracle表空间信息

    查询Oracle表空间信息,查看当前用户每个表占用空间的大小:查询出系统表空间的大小,并按大小进行降序排列(需要SYSDBA的权限): 1.查看当前用户每个表占用空间的大小: Select Segme ...

最新文章

  1. linux内核功能关闭透明大页 功能,redhat linux 7.4关闭透明大页
  2. 训练日志 2019.3.28
  3. geoserver矢量瓦片发服务前端展示偏移问题解决
  4. iOS开发 网络编程 Socket编程
  5. turbo c语言编程环境,turbo c(编程软件)
  6. 使用标尺工具获取某点的坐标
  7. 什么是GC,GC是什么意思?为什么要有GC?
  8. 短视频搬运如何上热门?搬运视频哪个平台容易挣钱?
  9. 目标检测--RFBNet训练自己制作数据集出现loss=nan问题的解决方法
  10. win10+黑苹果 单硬盘 双系统 超简单安装 一看就会
  11. 七种操作系统的发展史及特点
  12. C语言原码,反码和补码转换详解
  13. 三层交换机配置MSTP协议详解【华为eNSP实验】
  14. Java+面板颜色分块_地图区块颜色分块 | JShare
  15. 如何做代码评审(code review)
  16. 微信直播是怎么实现的?
  17. BerkeleyDB库简介
  18. 外文文献翻译工具,怎么样又快又精准?
  19. 关于雄迈提出撬动安防市场格局观点的感触
  20. storm和spring的结合

热门文章

  1. 全方面的了解超宽带信号高速采集记录回放系统
  2. matlab磁铁模拟,用matlab-模拟环形磁铁的磁场分布
  3. mysql @符号_quot;Incorrect string value quot; mysql 乱码 my插入emoji Yii2
  4. centos7子系统 win10_Win10下安装CentOS 7双系统详解
  5. python制作查询工具发给别人使用_用Python做一个简单的翻译工具
  6. 索引法则--LIKE以%开头会导致索引失效进而转向全表扫描(使用覆盖索引解决)...
  7. 怎样让公式编号不从1开始
  8. Python 给字符串进行加密,生成唯一固定长度字符串
  9. 关于插件管理器Alcatraz的一些问题
  10. 『雕虫小技』用 Zend Guard 加密 html 页面