如何查oracle空表,oracle查询空表

如何知道oracle数据库哪些表是有数据的?哪些表是空的没有数据?

select * from all_all_tables

创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的丰都网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

这是查询Oracle中的所有的表,包括SYS用户下的,你可以根据表空间和所属用户来限制查询结果

where owenr='' and tablespacename=''

想要查出没数据的话,all_all_tables中有个num_rows字段,记录该表数据是多少行的,rows=‘0’的肯定是没数据的,

select * from all_all_tables

where num_rows='0'

and owenr='所属用户' and tablespacename='所属表空间'

即可。

请教在oracle里如何查询哪些表里有数据,哪些表是空的

比如:test表空间有2个数据文件,datafile1为300MB,datafile2为400MB,那么test表空间的“Sum MB”就是700MB

“userd MB”表示表空间已经使用了多少

“free MB”表示表空间剩余多少

“percent_user”表示已经使用的百分比

oracle数据库查询哪张表是空表

可以查数据字典,select * from user_tables where num_rows=0。不过最好对table_name加一些限制避免行数过多。

如何在ORACLE中查询某一用户下所有的空表

先分析表

select 'analyze table '||table_name||' compute statistics;' from user_tables;

把查询结果依次执行

把所有表分析一遍

然后user_tables中就会刷新表的信息

select * from user_tables where num_rows=0;

查出行数为0的表信息.

ORACLE查询空表

MSSQL不知道

oracle在plsql里执行如下代码:

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;

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;

然后点output,显示的就是空表


标题名称:如何查oracle空表,oracle查询空表
URL链接:http://cdiso.cn/article/dsicjho.html

其他资讯