判断空表
来源:互联网 发布:java逻辑思维面试题 编辑:程序博客网 时间:2024/05/20 08:00
select segment_name,segment_type,bytes,blocks,extents from user_segments where segment_type='TABLE';
extent=1的就是空表
马上就有人提醒说有可能只有几条记录的表也是只有1个extent,当然还有高水位问题
hr@ORCL>delete from dropme;
1225043 rows deleted.
hr@ORCL>commit;
Commit complete.
hr@ORCL>select segment_name,bytes,blocks,extents from user_segments;
SEGMENT_NAME EXTENTS
------------------------------ ----------
DROPME 84
这才意识到依靠extent来判断是否是空表是不靠谱的
最后弄了条PLSQL才算是正式解决了这一问题
create or replace procedure check_is_null_table is
n_num number;
cursor user_table_cur is
select table_name from user_tables;
v_sql varchar2(200);
begin
for i in user_table_cur loop
v_sql:='select count(*) from '||i.table_name||' where rownum=1';
execute immediate v_sql
into n_num;
if n_num=0 then
dbms_output.put_line(i.table_name);
end if;
end loop;
exception when others then
dbms_output.put_line(v_sql);
end check_is_null_table;
总结了一下,虽然我自己知道delete不释放空间,自己也碰到过delete后表空间仍然不足的问题。很显然这里换了个方式我就忘记了。
- 判断空表
- 判断表是否为空?
- 判断空
- ABAP 判断内表为空
- ABAP 判断内表为空
- ABAP-判断内表是否为空
- 判断内表是否为空注意事项
- table表中textarea判断输入空值判断
- js判断空与Java判断空
- 判断数组为空
- 判断字符串为空
- 判断String为空
- 非空判断
- PHP空值判断
- 判断Resultset为空
- Java中判断空
- perl判断空字符串
- perl判断空字符串
- 论文要盲审。。。
- 用API实现指定共享用户访问权限的方法
- 框选三角面片并改变颜色
- va_start va_end
- 文件操作
- 判断空表
- 队列源码
- Java连接各种数据库
- 嵌入式Linux应用程序开发——多线程3(线程的同步——条件变量)
- sharepoint2007安装后报服务器配置错误及启动服务报错
- Uboot之四下载sdram运行,ok。
- Nginx中启动、停止、重启、升级操作命令小结
- 51单片机中data,idata,xdata,pdata的区别
- phpcms V9 整合 Discuz! X2 标准教程