ITPub博客

首页 > 数据库 > Oracle > ORA-26026: 唯一的索引 TESTTEMP.SYS_C0035273 最初处于无法使用的状态

ORA-26026: 唯一的索引 TESTTEMP.SYS_C0035273 最初处于无法使用的状态

原创 Oracle 作者:呱呱牛 时间:2016-06-28 15:42:14 0 删除 编辑
    在测试分区表时,对包含数据的分区进行truncate后,再次对分区表进行insert操作,提示ORA-26026错误

点击(此处)折叠或打开

  1. SQL> exec dbms_stats.gather_table_stats(ownname => 'testtemp',tabname => 'record_partition',degree => 3);
  2.  
  3. PL/SQL procedure successfully completed
  4.  
  5. SQL> select table_name,partition_name,num_rows FROM user_tab_partitions order by 1,2;
  6.  
  7.  
    TABLE_NAME                     PARTITION_NAME                   NUM_ROWS
    ------------------------------ ------------------------------ ----------
    RECORD_INDEX                   PART_011                          7055568
    RECORD_INDEX                   PART_012                          5231180
    RECORD_INDEX                   PART_013                          8568201
    RECORD_PARTITION               PART01_2013                         99986
    RECORD_PARTITION               PART02_2014                             0
    RECORD_PARTITION               PART03_2015                             0
    RECORD_PARTITION               PART04_2016                            13
    RECORD_PARTITION_HASH          PART01                         
    RECORD_PARTITION_HASH          PART02                         
    RECORD_PARTITION_HASH          PART03                         
    RECORD_PARTITION_HASH          PART04                         
     
    11 rows selected
  8.  
  9. SQL> alter table record_partition truncate partition PART01_2013;
  10.  
  11. Table truncated
  12.  
  13. SQL> exec dbms_stats.gather_table_stats(ownname => 'testtemp',tabname => 'record_partition',degree => 3);
  14.  
  15. PL/SQL procedure successfully completed
  16.  
  17. SQL> select count(*) from RECORD_PARTITION;
  18.  
  19.   COUNT(*)
  20. ----------
  21.         13
  22.   
  23. SQL> alter table record_partition truncate partition PART04_2016;
  24.  
  25. Table truncated
  26.  
  27. SQL> exec dbms_stats.gather_table_stats(ownname => 'testtemp',tabname => 'record_partition',degree => 3);
  28.  
  29. PL/SQL procedure successfully completed 

  30. SQL> insert /*+ append */ into record_partition select * from record ;
  31.  
  32. insert /*+ append */ into record_partition select * from record
  33.  
  34. ORA-26026: 唯一的索引 TESTTEMP.SYS_C0035273 最初处于无法使用的状态
  35.  
  36. SQL>
  37. SQL>
处理 ORA-26026 问题的方式很简单, 通过alter index ... rebuild online 对索引重建一下就能解决问题。

点击(此处)折叠或打开

  1. SQL> alter index TESTTEMP.SYS_C0035273 rebuild online;
  2.  
  3. Index altered

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/27039319/viewspace-2121128/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-05-29

  • 博文量
    96
  • 访问量
    286804