zoukankan      html  css  js  c++  java
  • 配置Oracle访问SQL地理数据库

    Oracle访问空间数据

    ArcSDE是ArcGIS的空间数据引擎,它是在关系数据库管理系统(RDBMS)中存储和管理多用户空间数据库的通路。以前连接方式有两种,服务连接与直接连接(简称"直连"),两种在不同ArcGIS版本中用软件与代码连接方式博客中也总结了一些;但现在,没有了ArcSDE服务器了,即没有了服务连接,只有直连。

    在ArcGIS中通过SDE存储空间数据到Oracle中有多种存储方式,分别有

    (1)二进制Long Raw

    (2)ESRI的ST_Geometry

    (3)基于Oracle Spatial的SDO_Geometry

    只要安装了ArcGIS Desktop和相应的关系型数据库,如oracle即可进行从GIS端访问和管理空间数据与oracle普通数据。然而,并存储空间数据库的方式是SDO_GEOMETRY,可以使用Oracle的SDO_Geometry管理数据,但现在要用ESRI的ST_Geometry访问怎么办?

    ST_Geometry访问空间数据

    升级数据库为地理

    升级地理数库注意两个问题:一是必须要建立SDE用户;二是授权文件不好找,可以用以前arcgis10.0时的注册机生成。用下面的工具就可以直接升级!

    升级后存储的格式如下:

    配置oracle

    要想使用ST_Geometry相应的函数和功能,还得配置我们的库,主要步骤是:

    (1)准备好dll库,st_shapelib.dll和libst_raster_ora.dll(后者是访问栅格相关函数用的,按需配置),它们的路径在:

    ArcGIS Server:……ArcGISServerDatabaseSupportOracleWindows64

    ArcMap:……ArcGISDesktop<version>DatabaseSupportOracleWindows64

    (2)修改oracle的extproc.ora 文件

    SET EXTPROC_DLLS=ONLY:C:\mylibraries\st_shapelib.dll(这是的路径为你dll的路径)

    如果是两个有分号隔开

    SET EXTPROC_DLLS=ONLY:C:\mylibraries\st_shapelib.dll;C:\mylibraries\libst_raster_ora.dll

    (3)SQL修改库的路径

    CREATE or REPLACE LIBRARY ST_SHAPELIB AS 'C:mylibrariesst_shapelib.dll';

    (4)重新编译 sde.st_geometry_shapelib_pkg 包

    ALTER PACKAGE sde.st_geometry_shapelib_pkg COMPILE REUSE SETTINGS;

    官方参考链接:http://desktop.arcgis.com/zh-cn/arcmap/10.4/manage-data/gdbs-in-oracle/configure-oracle-extproc.htm

  • 相关阅读:
    centos6系列更换阿里yum源
    javascript字符串方法学习汇总
    ORA-01439:要更改数据类型,则要修改的列必须为空
    Python之字典
    Python之元组
    Python之列表
    Tensorflow 快速学习
    Ubuntu 切换到root 授权失败
    受限玻尔兹曼机二
    Numpy 数组ndarray和常用函数速查
  • 原文地址:https://www.cnblogs.com/liweis/p/7883181.html
Copyright © 2011-2022 走看看