Problem: 收回升级权限以后出现Invalid objects和ST_GEOMETRY函数操作失败

文章编号 : 37915
软件: ArcSDE 9.2, 9.3, 9.3.1, 10
操作系统: N/A
已邀请:

易智瑞技术支持

赞同来自:

错误信息: 升级完ArcSDE for Oracle并收回升级权限以后,用ST_GEOMETRY函数访问空间数据时可能会出现如下错误:

ORA-29900: operator binding does not exist
ORA-06540: PL/SQL: compilation error
ORA-06553: PLS-907: cannot load library unit SDE.ST_GEOMETRY_OPERATORS
或者

ORA-06553: PLS-907: cannot load library unit SDE.ST_GEOM_UTIL
原因: 在升级完ArcSDE,收回SDE用户的“SELECT ANY TABLE”权限时,Oracle自动把一些包、函数和触发器标记为invalid,并根据数据库对象的特性自动进行重新验证。然而,任何依赖这些被标记为invalid的ST_GEOMETRY函数就会编译不过,抛出以上的错误。



解决方法: 这个问题可以通过重新编译那些标记为invalid的geodatabase包、触发器和函数来解决。用sysdba用户运行下面的SQL语句:
Exec dbms_utility.compile_schema( 'SDE', compile_all => FALSE );

如果geodatabase有多个用户模式(user schema),针对每个用户模式重复同样的操作





创建时间:2010-06-18
最近更新: 2010-09-27


原文链接
http://support.esrichina.com.c ... .html

cy10gis - 爱好GIS的圈外人

赞同来自:

感谢,让我的地理数据库复活了

要回复问题请先登录注册