问题描述

公司这边用了Oracle Spatial来存储GIS数据信息,今天在某表上创建空间索引时报了下面的错:

此处举例说明:

假如有表TEST,其中有一列SHAPE存储维度信息。

CREATE INDEX IDX_TEST_SHAPE ON TEST(SHAPE) INDEXTYPE IS MDSYS.SPATIAL_INDEX;

在百度根本找不到相关解决方案,后来FQ到谷歌上查了几圈发现都不是很匹配,最后在Oracle官方社区找到了解决方案:

https://community.oracle.com/thread/2435630

原因分析

就是说该表中存储的维度信息有部分是非法的,导致域索引无法创建成功。

解决问题

办法就是利用Oracle的SDO_GEOM包中的VALIDATE_LAYER_WITH_CONTEXT方法来找出异常数据并删除,然后重建域索引就好了!

SDO_GEOM包相关参考:

http://docs.oracle.com/cd/E11882_01/appdev.112/e11830/sdo_objgeom.htm#BGHIAAIF

具体操作步骤SQL:

--1.创建测试表,用于存储分析结果数据
CREATE TABLE val_results (sdo_rowid ROWID, result varchar2(1000));
--2.执行分析过程
CALL SDO_GEOM.VALIDATE_LAYER_WITH_CONTEXT('TEST','SHAPE','VAL_RESULTS');
--3.找出异常数据
SQL> SELECT * from val_results where length(result) < 10; SDO_ROWID
------------------
RESULT
------------------------
AAABXNAABAAAK+YAAC 13011 (这一列就是异常代码,前面拼上ORA-百度一下就能查出具体异常描述) ---此处我查出:
ORA-13011: value is out of range..
Cause: A specified dimension value is outside the range
defined for that dimension. Action: Make sure that all values to be encoded are within
the defined dimension range. --意思就是这条数据中存储的维度值超出了范围 --4.删除前面创建失败的索引(虽然创建时候报错了,但字典里已经有了该索引信息只不过是FAILED状态不可用)
drop index idx_test_shape force; --5.删除这条数据
delete from test where rowid='AAABXNAABAAAK+YAAC';
commit; --6.再次创建索引
CREATE INDEX IDX_TEST_SHAPE ON TEST(SHAPE) INDEXTYPE IS MDSYS.SPATIAL_INDEX;

特此奉上,希望大家碰到了少走弯路!不谢!

解决Oracle创建空间索引报错ORA-29855,ORA-13249,ORA-29400,ORA-01426的更多相关文章

  1. Oracle创建dblink报错:ORA-01017、ORA-02063解决

    Oracle环境:oracle 10.2.0.1 创建的 public dblink 连接oracle 11.2.0.3 ORA-01017: invalid username/password; l ...

  2. Mysql备份迁移——MySqlBackup(.net)——(无法解决视图嵌视图报错)

    这里是利用MySqlBackup,可以再nuget中下载. 无法解决视图嵌视图报错的问题,只导表跟数据比较合适,如果有视图嵌视图,请参照Mysql备份迁移——Mysqldump(.NET调用Mysql ...

  3. [转]ORACLE 11G 导出报错(EXP-00003)未找到段 (0,0) 的存储定义

    http://blog.csdn.net/qq_19524879/article/details/51313205 ORACLE 11G 导出报错(EXP-00003)未找到段 (0,0) 的存储定义 ...

  4. Oracle Online Patching报错"This is not a RAC setup. OPatch cannot determine the local node name"

    Oracle Online Patching报错"This is not a RAC setup. OPatch cannot determine the local node name&q ...

  5. 解决vue安装less报错Failed to compile with 1 errors的问题

    1.创建vue项目后安装less,执行 npm install less less-loader --save-dev 下载版本为:less-loader@6.1.0 , less@3.11.3,重启 ...

  6. 解决eclipse spring配置报错:cvc-elt.1: Cannot find the declaration of element

    解决eclipse spring配置报错:cvc-elt.1: Cannot find the declaration of element 'beans'.Referenced file conta ...

  7. 解决一个报表EdmFunction报错问题

        最近测试组提了一个bug,说是某个报表点击查询报错,查看错误log,错误信息如下. 类型"Ticket.Data.SqlFuns"上指定的方法"Boolean C ...

  8. 安装Oracle 11gR2,报错:[INS-06101] IP address of localhost could not be determined

    安装Oracle 11gR2,报错:[INS-06101] IP address of localhost could not be determined 出现这种错误是因为主机名和/etc/host ...

  9. 解决cookies存储中文报错问题

    URLEncoder.encode("username", "UTF-8"); URLDecoder.decode("123", " ...

  10. 解决element-ui upload组件报错 Avoid using non-primitive value as key, use string/number value instead

    到底是啥错呢,就是要求你的key必须是string或者number类型 那么解决就是找到这个报错的key(在node_modules/element-ui/lib/element-ui.common. ...

随机推荐

  1. 给Hexo博客文章加密

    有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 原文地址 这是个啥 首先, 这是 Hexo 生态圈中 最好的 ...

  2. [转帖]Linux 下rsync命令详细整理

    https://blog.csdn.net/weixin_44052462/article/details/116134761 rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面 ...

  3. [转帖]HTTP X-Forwarded-For 介绍

    https://www.runoob.com/w3cnote/http-x-forwarded-for.html X-Forwarded-For 是一个 HTTP 扩展头部.HTTP/1.1(RFC ...

  4. 银河麒麟安装多版本gcc的方式方法

    银河麒麟安装多版本gcc的方式方法 背景 最近想升级一下gcc 但是发现自己编译的话非常麻烦 记得之前CentOS7的时候有一个scl的处理 发现CentOS8 已经没有scl的仓库了 简单验证了一下 ...

  5. [转帖]TiFlash 面向编译器的自动向量化加速

    作者:朱一帆 目录​ SIMD 介绍 SIMD 函数派发方案 面向编译器的优化 SIMD 介绍​ SIMD 是重要的重要的程序加速手段.CMU DB 组在 Advanced Database Syst ...

  6. [转帖]LSM-Tree:从入门到放弃——入门:基本概念、操作和Trade-Off分析

    https://zhuanlan.zhihu.com/p/428267241 LSM-Tree,全程为日志结构合并树,有趣的是,这个数据结构实际上重点在于日志结构合并,和 tree 本身的关系并不是特 ...

  7. [转帖]《Linux性能优化实战》笔记(二)—— CPU 上下文切换(上)

    上一篇的最后一个例子,在多个进程竞争CPU时,我们看到每个进程实际上%usr部分只有20%多,70%多是在wait,但是load远远高于单个进程使用CPU达到100%. 这让我想到之前看的RWP公开课 ...

  8. 【转帖】71.常用的显示GC日志的参数、GC日志分析、日志分析工具的使用

    目录 1.常用的显示GC日志的参数 2.图解垃圾`GC`日志(重要) 3.日志分析工具的使用 1.常用的显示GC日志的参数 解释: 日志中,GC和Full GC表示的是GC的类型.GC只在新生代进行, ...

  9. [转帖]从v8到v9,Arm服务器发展之路

    https://zhuanlan.zhihu.com/p/615344155   01 ARM:3A大作 将 CPU 的设计与制造相分离的代工模式,给 AMD 提供了高度的灵活性.第二.三代 EPYC ...

  10. Arthas 超简单离线使用教程

    简介 Arthas 是阿里巴巴开源的一套监控java应用的工具 官网的文档地址: https://arthas.aliyun.com/doc/ 官方的简介说明: Arthas 是Alibaba开源的J ...