Oracle11g配置st_geometry

摘要:
在创建过程中可以看到以下信息。我们应该先跳过它,然后单击Finish,这样我们就可以在Oracle中管理空间数据。然而,当通过SQL直接操作某些空间数据时,仍可能报告相关错误。

环境:

Windows Server 2008R2、Oracle11.2.0.4、ArcGIS10.1

1、创建企业级数据库

通过ArcMap或者ArcCatalog注册企业级数据库,注册方式可以参考ArcGIS的官方文档,这里不做重点说明。

imageimage

创建过程如下可能看到如下信息,我们先进行跳过,点击完成即可,这样我们就可以在Oracle中管理空间数据了。

image

但是在部分通过sql直接操作空间数据的时候,可能仍会报相关错误。

2、进行测试

select sde.st_intersects(sde.st_point(11.1, 16.01, 4326),
                         sde.st_polygon('polygon ((10.01 20.01, 20.01 20.01, 20.01 15.04,10.01 15.04,10.01 20.01))',
                                        4326)) as test
  from dual;

image

提示缺少dll,为什么会这样呢,其实在创建企业级数据库时候的绿色提示已经告知我们了,这是因为ST_Geometry 的SQL函数使用通过Oracle外部过程代理(即 extproc)访问 Oracle 的共享库,如果需要使用这些内容,还需要进一步进行配置。

3、将st_shapelib.dll文件拷贝到Oracle安装目录BIN文件夹下

其中st_shapelib.dll可以从安装有Desktop的机器上拷贝,具体路径:D:Program Files (x86)ArcGISDesktop10.1DatabaseSupportOracleWindows64

Oracle目录下BIN文件夹具体路径:D:appAdministratorproduct11.2.0dbhome_1BIN

3、查看并修改st_shapelib.dll指向信息

select * from dba_libraries where library_name='ST_SHAPELIB';

image

如果不是我们拷贝的路径,请登录sde用户,修改路径指向我们拷贝的路径(D:appAdministratorproduct11.2.0dbhome_1BINst_shapelib.dll)

注意一定要在SDE用户下操作:

create or replace library st_shapelib as  'D:appAdministratorproduct11.2.0dbhome_1BINst_shapelib.dll';

最后可以执行先前的语句进行验证:

image

参考:

https://www.pianshen.com/article/7800870355/

https://desktop.arcgis.com/zh-cn/arcmap/latest/manage-data/gdbs-in-oracle/configure-oracle-extproc.htm

免责声明:文章转载自《Oracle11g配置st_geometry》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇爬虫实战篇(模拟登录)---我们以模拟去哪儿网为例ORACLE 常见错误及解决方法集锦下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

conn / as sysdba连接不上

问题: SQL> conn / as sysdbaERROR:ORA-09817: Write to audit file failed.Linux-x86_64 Error: 28: No space left on deviceAdditional information: 12ORA-01075: you are currently logge...

Linux 安装oracle10g 配置dataguard 介绍和步骤

        DataGuard是甲骨文推出的一种高可用性数据库方案,在Oracle 8i之前被称为Standby Database。从Oracle 9i开始,正式更名为Data Guard。它是在主节点与备用节点间通过日志同步来保证数据的同步,可以实现数据库快速切换与灾难性恢复。Data Guard只是在软件上对数据库进行设置,并不需要额外购买任何组件...

一些基本的Oracle命令

一些基本的Oracle命令基本命令 连接数据库 C:>SQLPLUS /NOLOG SQL>CONN / AS SYSDBA 1.Oracle 关闭 SQL>SHUTDOWN (ABORT|IMMEDIATE|NORMAL) 2.Oracle 启动 SQL>STARTUP (REMOUNT|MOUNT|OPENT) 3.SQL>...

RED HAT ES 5.4 X64安装ORACLE 10G R2 64bit

REDHAT 5.4 64bit 安装oracle 10G 64BIT1、检查包rpm -q --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc...

X oracle的内存参数 shmall shmmax shmmni sem

原文地址   :   https://blog.csdn.net/lihuarongaini/article/details/78540357第四章  Oracle内核参数 查看:more /proc/sys/kernel/shmmax 临时生效:echo 3145728 > /proc/sys/kernel/shmmax 永久生效,修改文件:/et...

oracle的存储过程语法(转)

1、ORA-00942: table or view does not exist 指的你要操作的表尚未存在,需要先create出来先。 2、ORA-00922: missing or invalid option 指的是有语法错误。遗漏了分号什么的 3、Warning: Procedure created with compilation errors...