ORA-13224: zero tolerance specified for layer in USER_SDO_GEOM_METADATA ORACLE 报错 故障修复 远程处理

文档解释

ORA-13224: zero tolerance specified for layer in USER_SDO_GEOM_METADATA

Cause: A tolerance of zero or NULL is supplied for a layer in USER_SDO_GEOM_METADATA view.

Action: Check the tolerance specified to make sure it is a positive value.

ORA-13224 这个错误表明,在用户提供的SDO_GEOM_METADATA元数据中指定了某一层的零容忍度。

官方解释

ORA-13224回报错误,因为在提供给SDO_GEOM_METADATA的表中,已指定了某一个层的零容忍度。

常见案例

假设我们有以下表格:

CREATE TABLE geotab (

geoid NUMBER,

geom SDO_GEOMETRY

);

接下来,如果我们创建使用 SDO_GEOM_METADATA 配置的索引:

begin

dbms_sdo_geom_metadata.create (

‘GEOTAB’,

‘GEOM’,

sdo_dim_array (

sdo_dim_element (‘LONG’, -180, 180, 0.5),

sdo_dim_element (‘LAT’, -90, 90, 0.5)

),

8265

);

dbms_sdo_geom_metadata.configure_layer_gb (

‘GEOTAB’,

‘GEOM’,

0.05,

‘STATE_BORDERS’

);

end;

此时,系统在每一层都要求我们规定容忍度,否则将会出现 ORA-13224 错误。

正常处理方法及步骤

正确处理 ORA-13224 错误方法如下:

首先检查表格中的SDO_GEOM_METADATA元数据是否正确,以及索引配置的拓扑网络是否正确,指定容忍度等信息;

接下来,确定正确的容忍度,并按照正确的方法将其添加到SDO_GEOM_METADATA中;

最后,重新加载元数据并重建索引。


数据运维技术 » ORA-13224: zero tolerance specified for layer in USER_SDO_GEOM_METADATA ORACLE 报错 故障修复 远程处理