Oracle 收缩空间问题-alter table
我已经从表 TAB1 中删除了一些数据。 为了声明空间,我正在执行
alter table TAB1 启用行移动; >一切顺利 更改表TAB1收缩空间; > ORA-10631: 不应为此对象指定 SHRINK 子句
这是因为表中存在基于函数的索引。我们无法使用基于函数的索引来缩小表。针对此问题存在任何解决方法。
I have deleted some data from the table TAB1.
In order to claim the space i am performing
alter table TAB1 enable row movement; > goes fine
alter table TAB1 shrink space; > ORA-10631: SHRINK clause should not be specified for this object
This is because there are function based indexes in the table. We can't shrink a table with function based indexes. Any work around exists for this issue.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
删除索引是最有可能的替代方案:
Dropping the Index was the most likely alternative:
似乎不太可能,除非放弃联邦调查局然后重新创建它。
Seems unlikely, other than dropping the FBI and then re-creating it.