oracle数据库无法显示图层,ArcMap无法在Oracle中创建图层案例 最近同事在客户的现场使用ArcMap无法创建图层的问题,简单
记录
混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载
一下处理过程。软件版本环境是:ArcGISDesktop10.2.1Oracle11.2.0.4由于保密原因,无法提供错误截图,只能提供错误代码。错误代码为ora-29881[oracle@bigdataserver~]$oerrora2988129881,00000,"failedtovalidateindextype"//*Cause:Indextypecannotbecompiled.//*Action:Trytocompiletheindextypewhichisreferencedby//thedomainindex.是indextype出的问题,因此首先想到是创建图层后要创建空间索引,空间索引为域索引,其indextype为st_spatial_index.建议先对其进行重新编译:SQL>alterindextypest_spatial_indexcompile;Indextypealtered.正常重新编译后,同事反馈问题依然存在。因此问题不在这个indextype身上,应该是别的indextype有问题,建议同事查询用户下的无效对象SQL>selectobject_name,object_typefromuser_objectswherestatus='INVALID';同事反馈返回四条记录,分别是:XMLDOCIX4_TXXMLDOCIX3_TXXMLDOCIX2_TXXMLDOCIX1_TX并且类型都是索引。接着让同事使用alterindexxmldocix1_ixrebuild;重建索引结果也报ora-29881。至此问题找到了,是这四个索引导致。继续查看这四个索引的定义:SQL>selectdbms_metadata.get_ddl('INDEX','XMLDOCIX1_TX','SDE')fromdual;DBMS_METADATA.GET_DDL('INDEX','XMLDOCIX1_TX','SDE')--------------------------------------------------------------------------------CREATEINDEX"SDE"."XMLDOCIX1_TX"ON"SDE"."SDE_XML_DOC1"("XML_DOC_VAL")INDEXTYPEIS"CTXSYS"."CONTEXT"SQL>selectdbms_metadata.get_ddl('INDEX','XMLDOCIX2_TX','SDE')fromdual;DBMS_METADATA.GET_DDL('INDEX','XMLDOCIX2_TX','SDE')--------------------------------------------------------------------------------CREATEINDEX"SDE"."XMLDOCIX2_TX"ON"SDE"."SDE_XML_DOC2"("XML_DOC_VAL")INDEXTYPEIS"CTXSYS"."CONTEXT"SQL>selectdbms_metadata.get_ddl('INDEX','XMLDOCIX3_TX','SDE')fromdual;DBMS_METADATA.GET_DDL('INDEX','XMLDOCIX3_TX','SDE')--------------------------------------------------------------------------------CREATEINDEX"SDE"."XMLDOCIX3_TX"ON"SDE"."SDE_XML_DOC3"("XML_DOC_VAL")INDEXTYPEIS"CTXSYS"."CONTEXT"SQL>selectdbms_metadata.get_ddl('INDEX','XMLDOCIX4_TX','SDE')fromdual;DBMS_METADATA.GET_DDL('INDEX','XMLDOCIX4_TX','SDE')--------------------------------------------------------------------------------CREATEINDEX"SDE"."XMLDOCIX4_TX"ON"SDE"."SDE_XML_DOC4"("XML_DOC_VAL")INDEXTYPEIS"CTXSYS"."CONTEXT"这四个索引果然也都是domain索引,是用来进行全文检索的索引。继续让同事查看CONTEXT是否是正常的。SQL>selectstatusfromall_objectswhereowner='CTXSYS'andobject_type='INDEXTYPE'andobject_name='CONTEXT';STATUS-------VALID同事反馈的结果是VALID,那就是CONTEXT本身的问题,就是索引本身由于不明原因导致失效了。建议同事将这四个索引删除后重建。删除后重建问题解决。文章来源:http://blog.csdn.net/liufeng1980423/article/details/62881240 -全文完-