这个错误是由于索引失效造成的,重建索引后,问题就解决了。

我们看到,当使用类似 alter table xxxxxx move tablespace xxxxxxx 命令后,索引就会失效。

当然,作为测试,也可以直接使用alter index idxt unusable;命令使索引失效,例如:
SQL> alter index idxt unusable;

Index altered.

SQL>

在这种情况下,我们向表中插入数据看看是什么情况:
SQL> insert into t values(11);
insert into t values(11)
*
ERROR at line 1:
ORA-01502: index 'MISC.IDXT' or partition of such index is in unusable state

SQL>
我们看到,这时就出现了常见的“ORA-01502: index 'XXXXXXXX' or partition of such index is in unusable state”错误。

检查一下索引状态,我们会注意到索引已经是“UNUSABLE”了。
SQL> select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='IDXT';

INDEX_NAME                     INDEX_TYPE                  TABLESPACE_NAME                TABLE_TYPE  STATUS
------------------------------ --------------------------- ------------------------------ ----------- --------
IDXT                           NORMAL                      DATA_DYNAMIC                   TABLE       UNUSABLE

SQL>

首先,先设置 “skip_unusable_indexes=false”,也就是不跳过失效索引
SQL> alter session set skip_unusable_indexes=false;

Session altered.

SQL>

然后重建这个失效的索引
SQL> alter index idxt rebuild;

Index altered.

SQL> select index_name,index_type,tablespace_name,table_type,status from user_indexes where index_name='IDXT';

INDEX_NAME                     INDEX_TYPE                  TABLESPACE_NAME                TABLE_TYPE  STATUS
------------------------------ --------------------------- ------------------------------ ----------- --------
IDXT                           NORMAL                      DATA_DYNAMIC                   TABLE       VALID

SQL>
我们看到重建索引后,索引的状态就正常了。

现在插入数据,看看是正常:
SQL> insert into t values(12);

1 row created.

SQL> commit;

Commit complete.

SQL>
看来,重建索引才是解决这类问题的彻底的方法。

ORA-01502错误成因和解决方法的更多相关文章

  1. [转载]ORA-01502错误成因和解决方法

    检查一下索引状态,我们会注意到索引已经是“UNUSABLE”了.SQL> select index_name,index_type,tablespace_name,table_type,stat ...

  2. coreseek常见错误原因及解决方法

    coreseek常见错误原因及解决方法 Coreseek 中文全文检索引擎 Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和 ...

  3. android 真机调试出现错误 INSTALL_FAILED_INSUFFICIENT_STORAGE 的解决方法。

    关于这个神奇的 内存不够错误的通常解决方法,网上大把,建议大家在尝试过了网上的方法后再来尝试下我的这种方法. 编译工具: android studio 测试真机:米 2 调试的时候出现:INSTALL ...

  4. 无法打开物理文件xxx.mdf操作系统错误 5:“5(拒绝访问。)” (Microsoft SQL Server,错误: 5120)的解决方法

    无法打开物理文件xxx.mdf操作系统错误 5:“5(拒绝访问.)” (Microsoft SQL Server,错误: 5120)的解决方法   问题描述: 在附加数据库到sql server时,附 ...

  5. 错误:Unsupported major.minor version 51.0(jdk版本错误)的解决方法

    错误:Unsupported major.minor version 51.0(jdk版本错误)的解决方法 java.lang.UnsupportedClassVersionError: org/ap ...

  6. 批处理命令篇--配置免安装mysql 5.6.22, 以及1067错误的一个解决方法

    mysql 服务启动出现1067错误的一个解决方法: 当服务启动出现1067错误时,可查看“windows 事件查看器”,发现类似错误提示 Can't find messagefile 'F:\    ...

  7. IIS发布网站浏览之后看到的是文件目录 & Internal Server Error 处理程序“ExtensionlessUrlHandler-ISAPI-4.0_64bit”在其模块列表中有一个错误模块“IsapiModule” 解决方法 & App_global.asax.pduxejp_.dll”--“拒绝访问。 ”

    Q:IIS发布网站浏览之后看到的是文件目录 A:它出现了一个说到.NET4.0 更高框架什么的错误,所以我将 .NTE CRL版本由4.0改为2.0了,改为2.0后就出现了只能浏览文件目录了.改为4. ...

  8. ORA-04091错误原因与解决方法

    最近工作中写了一触发器报错:ORA-04091:table XX  is mutating, trigger/function may not see it. 下面通过官方文档及网友提供资料分析一下错 ...

  9. DirectX SDK (June 2010)安装错误S1023,解决方法

    转自:http://hi.baidu.com/rootcat/item/6730f15f85e2c1958c12ed81 DirectX SDK (June 2010)安装错误S1023,解决方法 导 ...

随机推荐

  1. 转载:Erlang 资源

    Erlang资源 erlang豆瓣广播

  2. DB Cache

    1 DB Cache 是以bock为单位组织的缓冲区,不同大小的BLOCK对应不同的缓冲区参数 2 DB Cache的命中率越高,访问性能就越好 3 Cache中的数据块通过散列算法实现 4 每个链上 ...

  3. uva387 - A Puzzling Problem

    A Puzzling Problem The goal of this problem is to write a program which will take from 1 to 5 puzzle ...

  4. uva129 - Krypton Factor 7.4.3 困难的串

      7.4.3困难的串 学习点:dfs加入返回值,递归搜索过程中如果有一个成功,就直接退出 //7.4.3 困难的串 #include<cstdio> #include<cstrin ...

  5. CSS去除链接虚线(兼容IE6、IE7)

    在css里加入以下代码: a{    hide-focus: expression( this.hideFocus=true );    outline: none;}

  6. IOS学习经验总结--来自知乎网友

    转自知乎:http://www.zhihu.com/question/20016551 我当时刚学iOS开发的时候一样的感觉 总想知道原理 内部怎么回事 感觉在像在雾里但是iOS开发就是这样 他是封闭 ...

  7. Skyline TerraExplorer Pro(等ActiveX控件)在Google Chrome浏览器的运行方法

    首先感谢ActiveX for Chrome 网银助手(np-activex)这个项目(https://code.google.com/p/np-activex/),解决了我们困惑很久的问题——在Ch ...

  8. 简单的新浪微博OAuth认证实现

    System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY); System.setProperty(&q ...

  9. springMVC与struts2的区别

    1. 机制:spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同. 2. 性能:spring会稍微比struts快.spring mvc是基于方法的设 ...

  10. 谈C#中的Delegate

    引言 Delegate是Dotnet1.0的时候已经存在的特性了,但由于在实际工作中一直没有机会使用Delegate这个特性,所以一直没有对它作整理.这两天,我再度翻阅了一些关于Delegate的资料 ...