查看oracle数据库当前用户下所有的表和记录总数

查看oracle数据库当前用户下所有的表和记录总数

执行下面的sql语句就能得到结果

declare 
  s varchar2(500);
  name2 varchar2(500);
  --cursor  声明 光标
  cursor cur_emp is select table_name from user_tables;
begin 
   for  i in cur_emp loop
        name2 := 'select count(*) from '||i.table_name;
        --execute immediate  立即执行   不会提交一个DML事务执行
        --DDL命令(DDL主要负责---数据库---的创///删以及表格的创///)
        
        --DML是   对----数据库表----中的数据增删改的操作.
        
        --将不会提交一个DML事务执行,应该在完成前显式提交(直接提交,类似COMMIT)或者作为EXECUTE IMMEDIATE自己的一部分.           
        --假如通过EXECUTE IMMEDIATE处理DDL命令,它提交所有以前改变的数据
        execute immediate name2 into s;
   if (s=0) then
        dbms_output.put_line(i.table_name||':'||s);         
   end if;
        
   end loop;  
end;

如下图执行SQL语句在输出栏能看到结果:

查看oracle数据库当前用户下所有的表和记录总数_第1张图片

你可能感兴趣的:(后端)