请教大家一个问题我有个表储存的是BLOB型数据,现在删除了该表的一部分数据(大约10G)
但是表空间的剩余容量并没有增加请教一下是不是我没删掉的原因呢?

解决方案 »

  1.   

    delete删除数据,不会降低HWM水位线,更不会释放占用的空间除非进行空间的手动释放,如shrink,move等,
    删除的空间虽然不能自动释放,但是可以被重用
      

  2.   

    如shrink,move等,进行表空间整理,注意慎重操作,如果不慎重进行,会导致索引失效以及表数据无法插入等情况
      

  3.   

    alter table tab_name move ;--不改变表空间的操作
    alter table tab_name move tablespace ts_name;--改变表空间的操作
    操作后相关索引失效,应重新是索引生效
      

  4.   

    若今后此表还与大量的数据导入或更新,不建议收缩表空间大小
    若以后较少向表中插入、更新,则可收缩表空间大小
    先查询dba_free_space中表对应数据文件空闲空间
    然后alter database datafile '..../***.dbf' resize ****M;
      

  5.   

    alter table tab_name move tablespace ts_name; 是指将删掉的部分移到其他表空间吗?还是将整个表移到其他表空间?
      

  6.   

    表被move到其他表空间后,关于这个表的SQL语句会受到影响不