使用SDO_WITHIN_DISTANCE时无法执行OCDIIndexStart()例程

时间:2017-08-10 09:14:59

标签: database oracle oracle11g oracle-spatial

我试图找到距离查询中使用的点5公里范围内的点 Table Description and Data
The error
这些表包含2D点数据,两个表都包含 coordis 作为SDO_GEOMETRY类型列。有关错误的任何帮助吗?我正在使用Oracle Spatial for Oracle 11g。这是我第一次使用Oracle Spatial。所以,我可能会在没有意识到的情况下犯下一些非常愚蠢的错误。

2 个答案:

答案 0 :(得分:0)

您是否在桌面上创建了空间索引?消息表明没有。 SDO_WITHIN_DISTANCE需要索引。

  

使用空间索引来标识空间对象集   在给定对象的某个指定距离内,例如某个区域   兴趣或兴趣点。

OCDInexStart方法是ODCIIndex Interface的一部分。当Oracle想要使用域索引时,总会执行此方法。

答案 1 :(得分:0)

您收到错误是因为您将运算符的输出与字符串' true'进行比较。那应该是大写' TRUE'。

我知道,我知道。看起来很傻。但就是这样。你也无法比较FALSE(或假)。但你可以比较<> ' TRUE'