配置st_geometry.dll(以ArcGIS10.5.1+Oracle12c R1为例)

准备工作:

首先当然是找到st_geometry.dll文件,比如我本机的:

C:\Program Files (x86)\ArcGIS\Desktop10.5\DatabaseSupport\Oracle\Windows64

目录下找到st_shapelib.dll文件。

其次,找到Oracle的服务端的安装目录,比如我我本机的:D:\Oracle\product\12.1.0\dbhome_1,找到BIN目录。

 

亲测了两种方法,供大家参考:

方法1:

1、拷贝st_shapelib.dll到D:\Oracle\product\12.1.0\dbhome_1\BIN目录下

2、修改D:\Oracle\product\12.1.0\dbhome_1\hs\admin目录下的extproc.ora文件,在最后一行加上图上红色框框部分的内容:

SET EXTPROC_DLLS=ONLY:D:\\Oracle\\product\12.1.0\\dbhome_1\\BIN\\st_shapelib.dll

特别说明:路径要用双斜杠!!!

方法2:

1、拷贝st_shapelib.dll到D:\Oracle\product\12.1.0\dbhome_1\BIN目录下

2、修改D:\Oracle\product\12.1.0\dbhome_1\NETWORK\ADMIN目录下的listener.ora文件:在EXTPROC_DLLS中追加st_shapelib.dll的路径(注意与其他dll的分隔符 分号;)

 

3、重启Oracle的监听服务。

===============================================================================

以上两种方法任选,完成上述操作后,继续下一步操作:

4、打开PLSQ;执行SQL语句:

create or replace library ST_SHAPELIB as 'D:\Oracle\product\12.1.0\dbhome_1\BIN\st_shapelib.dll';
alter package sde.st_geometry_shapelib_pkg compile reuse settings;

执行完前后都可以通过SQL语句查看一下键值的内容:select * from user_libraries;

5、验证:

select sde.st_astext(shape) from 表名 where 条件;

例如:select sde.st_astext(shape) from RES_BUD_PY_G_CLIP where objectid < 3;

OK,若你也看到上图类似内容,恭喜你,大功告成!

相关函数列表可参考:http://desktop.arcgis.com/zh-cn/arcmap/latest/manage-data/using-sql-with-gdbs/a-quick-tour-of-sql-functions-used-with-st-geometry.htm

写在后面的话:st_geometry.dll文件不一定要拷贝到oracle服务端安装目录的bin目录下,只要保证st_geometry.dll的存放目录没有空格,没有括号等特殊字符即可。但是为了方便管理和记录,建议还是放在%ORACLE_HOME%/bin目录下。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值