• 技术文章 >数据库 >mysql教程

    ArcGIS应用Oracle Spatial特征分析

    2016-06-07 15:50:50原创577

    ArcGIS应用OracleSpatial特征分析 该文章并不是将Oracle Spatial与ST_Geometry做对比,关于两者的对比,可以参考:http://blog.csdn.net/warrenwyf/article/category/705065,这里从数据结构,到性能对比,都描述的很清楚。 其实这篇文件就是说明一下在ArcGI

    ArcGIS应用OracleSpatial特征分析

    该文章并不是将Oracle Spatial与ST_Geometry做对比,关于两者的对比,可以参考:http://blog.csdn.net/warrenwyf/article/category/705065,这里从数据结构,到性能对比,都描述的很清楚。

    其实这篇文件就是说明一下在ArcGIS中使用OracleSpatial在ArcGIS与使用ST_Geometry的特征不同,从不同的特征也可以证明Oracle Spatial存储与ST_Geometry存储的结构对比。

    问题1:怎么判断我的数据是否为Oracle Spatial存储

    SQL> desc polygon_st
     名称                                      是否为空? 类型
     ------------------------------------------------- ----------------------------
     OBJECTID                                  NOT NULLNUMBER(38)
     NAME                                              NVARCHAR2(30)
     CNTY_CODE                                          NVARCHAR2(6)
     PROV                                              NVARCHAR2(20)
     CITY                                              NVARCHAR2(20)
     SHAPE                                             SDE.ST_GEOMETRY
     
    SQL> desc polygon_sdo
     名称                                      是否为空? 类型
     ------------------------------------------------- ----------------------------
     OBJECTID                                  NOT NULLNUMBER(38)
     NAME                                              NVARCHAR2(30)
     CNTY_CODE                                         NVARCHAR2(6)
     PROV                                              NVARCHAR2(20)
     CITY                                              NVARCHAR2(20)
     SHAPE                                             MDSYS.SDO_GEOMETRY
     SE_ANNO_CAD_DATA                                   BLOB

    我们使用Sqlplus进行连接,直接Desc相关的表,查看关于空间列的描述可以看出,很明显的ST_Geometry 和MDSYS.SDO_GEOMETRY对比。

    问题2:怎么使用ArcGIS将数据导入到ArcSDE中以Oracle Spatial存储


    可以使用ArcGIS的Import工具等将数据导入到ArcSDE中,在导入前选择Configuration Keyword:选择SDE_GEOMETRY。

    该关键字主要是在SDEHOME/etc/dbtune.sde里面控制(其他后缀文件也可以,也可以使用sdedbtune命令进行修改)

    ##DEFAULTS
     
    GEOMETRY_STORAGE   "ST_GEOMETRY"
    ST_GEOM_LOB_STORAGE  " STOREAS (
    #                      TABLESPACE
                           ENABLE STORAGE IN ROW CHUNK 8K RETENTIONCACHE) "
     
    ATTRIBUTE_BINARY   "BLOB"
    RASTER_STORAGE      "BLOB"
    ......
     
    END
     
    -------------------------------------------分割线----------------
     
    ##SDO_GEOMETRY
    GEOMETRY_STORAGE   "SDO_GEOMETRY"
    ATTRIBUTE_BINARY   "BLOB"
    RASTER_STORAGE    "SDO_GEORASTER"
    SDO_COMMIT_INTERVAL  1000
    RDT_STORAGE         "PCTFREE 0INITRANS 4"
    #                    TABLESPACE
    RDT_INDEX_COMPOSITE "PCTFREE 0 INITRANS 4
    #                    TABLESPACE
                        NOLOGGING"
    UI_TEXT             "UserInterface text description for SDO_GEOMETRY"
     
    COMMENT             "Anygeneral comment for SDO_GEOMETRY keyword"
     
    END

    通过这个文件说明,我们很容易看到系统数据按照什么样的存储来选择的。

    问题3:使用Oracle Spatial存储的数据与ST_Geometry存储在ArcGIS桌面表现有哪些不一样

    表现1:使用“信息”工具,查看要素属性时

    因为数据结构不一样,ST_Geometry存储包括了数据的长度和面积,但是对SDO_Geometry没有,所以,使用SDO_geometry存储的数据,两者都为0,这种情况是正常的。

    从上图可以看到,由于两者使用的索引方式不同,ST_Geometry使用Grid格网索引,而Oracle Spatial使用R Tree索引,所以用户当看到这样的区别也是正常的。

    问题4:我是否可以在不使用ArcSDE的情况下,使用ArcGIS桌面来连接Oracle Spatial数据

    回答:只有在ArcGIS10当中是可以的,因为ArcGIS10提供了QueryLayer,QueryLayer就可以在不使用ArcSDE的情况下,来访问非ArcGIS(ST_Geometry)的数据。

    关于QueryLayer使用:http://wenku.baidu.com/view/3bb5268271fe910ef12df8db.html


    免费下载地址:http://wenku.baidu.com/view/dd5aeec62cc58bd63186bd32.html

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:Oracle归档日志满了导致无法启动ora 下一篇:Kettle 生成的XML格式数据保存到Oracle 数据库的BLOB类型字段中

    相关文章推荐

    • mysql怎样修改用户• 一起聊聊两条INSERT语句引发的死锁• 如何解决ubuntu mysql 乱码问题• mysql存储过程怎样变量赋值• centos中rpm怎样安装mysql

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网