试一下alter tablespace MyTBSpace coalesce,看看空间有没有降下来,如果不行的话用export/import肯定可以释放空间。
解决方案 »
- 刚学oracle,向大家求助
- 为什么oracle运行一段时间后,会自动断开连接报12560错误,重启电脑后又可以连接了
- 一个菜鸟问一个关联的问题
- 根据DMP文件判断表空间、用户名和密码?
- 求救:HPUNIX下的ORACLE7执行select * from tablename提示权限不足!!
- 关于一个提取查询结果前3条的问题
- sql可以用函数max作为查询条件吗?
- oracle建立索引问题,在线等待
- 艰难选择 erp or dba ,大家能不能帮我选一下
- 知道系统进程SID号,如何将其杀掉?很急,谢谢
- oracle9i导出错误.请大侠指教.遇到 ORACLE 错误 6550
- 如何讲sql2k的数据导入到oracle9i中?
alter table T_Unit_History deallocate unused;
alter table 表名
deallocate unused keep 2m;当删除数据时,收缩表,并保持高水印(High Water Mark)
方法2:一般用导出EXP和导入IMP工具来做;方法3:或者你新建一表空间,将原表空间移到新的表空间试试;alter table 表名
move tablespace data1;会保持原有的索引(索引不可用,要重建),约束等;重新组织表
新建一个表Unit_History,其值取表T_Unit_History中的值:
SQL>create table Unit_History as select * from T_Unit_History;
Truncate表T_Unit_History,这样可以释放表空间:
SQL>truncate table T_Unit_History;
将表Unit_History中的值导回表T_Unit_History:
SQL>insert into T_Unit_History select * from Unit_History;
清空表Unit_History,释放表空间:
SQL>truncate table Unit_History;
再drop表Unit_History:
SQL>drop table Unit_History;
新建一个表Unit_History,其值取表T_Unit_History中的值:
SQL>create table Unit_History as select * from T_Unit_History;
Truncate表T_Unit_History,这样可以释放表空间:
SQL>truncate table T_Unit_History;
将表Unit_History中的值导回表T_Unit_History:
SQL>insert into T_Unit_History select * from Unit_History;
清空表Unit_History,释放表空间:
SQL>truncate table Unit_History;
再drop表Unit_History:
SQL>drop table Unit_History;
1、如果使用drop删除掉分区后,原有分区的空间是否会自动释放呢?
2、如果没有自动释放,那其他分区是否可以占用这个删除掉的分区的空间呢?
3、如果drop删除掉分区后,原有分区的空间不自动释放,是否需要什么语句回收表空间呢?谢谢