Oracle配置SQL空间操作要点说明

  前面配置PL/SQL直接通过SQL查询SDE空间数据库,网上已有诸多示例,

  常见问题如下:

ORA-06520: PL/SQL: 加载外部库时出错
ORA-06522: Unable to load DLL
ORA-06512: 在 "SDE.ST_GEOMETRY_SHAPELIB_PKG", line 70
ORA-06512: 在 "SDE.ST_GEOMETRY_OPERATORS", line 68

【核心问题就在于未能加载"st_shapelib.dll"】

要点1:Oracle的用户库是否包含了st_shapelib这个库

PL/SQL以SDE用户登录进去,查询SQL:

select * from user_libraries;

如果找不到,或者看到的SDE库的地址不对,那么之下一下SQL:

CREATE OR REPLACE LIBRARY st_shapelib as 'F:\Program Files\ArcGIS\ArcSDE\ora11gexe\bin\st_shapelib.dll';

后面地址根据个人实际情况,再次执行前面SQL语句,则会显示正常路径。

要点2:监听和命名配置,这里按照ESRI教程例子来,一般不会出错。

要点3:Oracle环境变量设置,st_shapelib.dll文件拷贝正确

将F:\Program Files\ArcGIS\ArcSDE\ora11gexe\bin\st_shapelib.dll 这个文件拷贝到%ORACLE_HOME%/bin目录下,并且要确保系统环境变量Path中有ORACLE_HOME;

要点4:系统权限,根据不同操作系统,有时会需要按“管理员权限”运行,更改兼容运行模式。

测试:

环境:win10-64,arcgis10.5,SDE10.3,PL/SQL,Oracle11G-64

以上针对Windows操作系统,Linux/Unix另议。

 

posted @ 2017-08-03 16:22  GIS流水  阅读(1507)  评论(0编辑  收藏  举报