ORA-29902: error in executing ODCIIndexStart() routine when creating spatial index with st_geometry

描述
Oracle中的模式(大约24个字符或更大)尝试使用st_geometry创建空间索引可能导致以下Oracle错误: 


代码:
ORA-29902: error in executing ODCIIndexStart() routine
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "SDE.ST_DOMAIN_METHODS", line 125.

在通过ArcGIS创建空间索引时,错误也可能出现在sde_ <service> .log中,并且启用了详细信息。

例如,名为FACILITIES_MANAGEMENT_DEPT(拥有数据的用户名)的模式在创建st_geometry空间索引时遇到上述错误消息。

已创建索引,但在显示,查询和标识功能时问题会导致问题。
原因
在sde.st_domain_methods包中,ODCIIndexStart函数具有一个定义为32个字符的变量字符串,该字符串不足以支持超过24个字符的模式名称和空间索引的名称。

解决方法
使用具有较少字符的模式名称或查询没有空间索引的数据(由于每个空间查询都会导致完整的表扫描,因此会遇到大表的性能问题)。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章