这里假设已经在ORACLE里边创建了SDE数据库,在此基础上进行配置:
1、以sde用户登录到oracle,运行一下语句:
SELECT * FROM USER_LIBRARIES;
CREATE OR REPLACE LIBRARY ST_SHAPELIB AS 'arcsde 中st_shapelib.dll的路径'
2、找到oracle的配置文件extproc.ora,最后一行一般默认是"SET EXTPROC_DLLS=",改成“SET EXTPROC_DLLS=ANY”。假设%ORACLE_HOME%为oracle数据库端的安装路径,那么这个配置文件的路径如下:
%ORACLE_HOME%/hs/admin/extpro.ora
3、运行一下语句,检验是否能正常调用ST_GEOMETRY的函数
select sde.ST_AsText(SDE.ST_Geometry('POINT (10 10)', 0)) from dual;
网上有很多教程说道要修改%ORACLE_HOME%/network/admin下的listener.ora和tnsnames.ora两个配置文件,这应该是老版本的做法,现在oracle 11g r2 就不用了。原来的配置方法繁琐,而且很容易出错,一个错误就可能导致oracle无法连接上,而且很多莫名其妙的问题