如题,在ORACLE中自动新增删除分区之后,会报出ora-01502的错误。
首先,问题的原因是在于进行表结构修改后,索引失效。问题解决有如下几个方式:
1、手动查询重建
(1)先查询失效索引,语句为:
select index_name ,status from user_indexes where Status = 'UNUSABLE' ;
(2)重建索引,语句为:
alter index xxx rebuild;
手动操作有个快捷的方式,可以将上面的步骤合成为一个查询语句:
select 'alter index ' || index_name || ' rebuild;' from user_indexes where Status = 'UNUSABLE' ;
这样直接复制查询出来的语句手动执行即可。