在oracle数据库中删除表后,怎么样把占用的磁盘空间释放

已举报 回答
在oracle数据库中删除表后,怎么样把占用的磁盘空间释放
问在线客服
扫码问在线客服
  • 回答数

    5

  • 浏览数

    7,729

5个回答 默认排序
  • 默认排序
  • 按时间排序

已采纳
使用: truncate table tablename DROP STORAGE;

解释: 直接删除表,并且释放存储空间。truncate的意思是清空表数据, “DROP STORAGE”是释放存储空间。
取消 评论
你个250
取消 评论
网页上面可以对库的表进行操作。实在不行下个plsql来操作嘛。
取消 评论
对表的删除涉及到DDL语句,这种语句网上一搜一大堆,不过我奇怪的是楼主为什么要这样操作?一般项目中表都是不会让程序来删的。
取消 评论
DB2 低一些的版本没有像SQLSERVER的Shrinkfile或者Oracle的Resize功能。

假如你的DB2是V9.1以上的话可以直接用ALTER TABLESPACE RESIZE收缩表空间,此命令执行时它会自动将表进行DELETE、RECREATE、IMPORT、EXPORT、REORG或者LOAD等,否则你可以用下面的方法来收缩你的表空间。
1、导出所有表结构和数据,然后将表重新建立,然后再导入数据
2、通过命令 db2dart database-name /LHWM /TSI tablespace-id /NP 0,运行此命令后DB2会生成一个文件,文件会有一些建议,告诉你怎么做EXPORT、IMPORT、REORG、LOAD,你按它的步骤一步一步去做,做完之后空间就会自动释放,然后再用ALTER TABLESPACE的RESIZE功能来收缩表空间。

谢谢!
取消 评论
ZOL问答 > 在oracle数据库中删除表后,怎么样把占用的磁盘空间释放

举报

感谢您为社区的和谐贡献力量请选择举报类型

举报成功

经过核实后将会做出处理
感谢您为社区和谐做出贡献

扫码参与新品0元试用
晒单、顶楼豪礼等你拿

扫一扫,关注我们
提示

确定要取消此次报名,退出该活动?