暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 重建本地非前缀索引引发ORA 02149: 指定的分区不存在

ASKTOM 2019-04-29
2521

问题描述

我用本地分区索引截断了表上的分区。在同一分区中再次插入记录后,如果我尝试在该分区上重建索引,则会给出ORA 02149: 指定的分区不存在。但是,我可以使用select语句从分区中看到结果。

Alter table <> Truncate partition <>

Alter Index <> Rebuild partition <> 

专家解答

你将不得不给出一个完整的例子,包括create table,因为它看起来对我来说很好:

create table t (
  c1 int, c2 int
) partition by list ( c1 ) (
  partition p1 values ( 1 ), 
  partition p2 values ( 2 ) 
);

create index i 
  on t ( c2 ) 
  local;

insert into t values ( 1, 1 );
insert into t values ( 2, 2 );
commit;

alter table t truncate partition p1;

select partition_name, status 
from   user_ind_partitions
where  index_name = 'I';

PARTITION_NAME   STATUS   
P1                USABLE    
P2                USABLE    

alter index i rebuild partition p1;

select partition_name, status 
from   user_ind_partitions
where  index_name = 'I';

PARTITION_NAME   STATUS   
P1                USABLE    
P2                USABLE


我不确定您为什么要尝试重建索引。因为据我所知,它在截断后仍然有效...
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论