当前位置: 首页 > news >正文

ArcSDE vs. oracle Spatial 4

导入数据到Oracle Spatial

Oracle Spatial并没有像ArcGIS那样有一套从桌面到数据库到服务器到开发包的全方位GIS产品体系,因此向Oracle中加载数据相比用ArcGIS要麻烦得多,同时也没有那么多的数据源格式的支持。Oracle本身则提供了一个工具shp2sdo[1] ,可以帮助你导入Shapefile到Oracle Spatial中,这个工具的使用分三个步骤:

第一步,使用shp2sde工具生成脚本和数据:

[oracle@test2 shp2sdo_linux]$ ./shp2sdo.exe

shp2sdo - Shapefile(r) To Oracle Spatial Converter

Version 2.15 21-May-2004

Copyright 1997,2004 Oracle Corporation

For use with Oracle Spatial.

Input shapefile (no extension): /home/wuyf/world/cities

Shape file /home/wuyf/world/cities.shp contains 2539 points

Output table [/home/wuyf/world/cities]: cities

Output data model [O]:

Geometry column [GEOM]:

ID column []:

Points stored in SDO_POINT_TYPE ? [Y]:

Use a spatial reference system ID (SRID) ? [N]:

Change tolerance value from the default (0.00000005) ? [N]:

Generate data inside control files ? [N]:

Target database Oracle8i? [N]:

Spatial Data requires more than 6 digits precision? [N]:

Bounds: X=[-176.151564,179.221888] Y=[-54.792000,78.200001]

Override ? [N]:

Processing shapefile /home/wuyf/world/cities into spatial table CITIES

Data model is object-relational

Geometry column is GEOM

Points stored in SDO_POINT attributes

Data is in a separate file(s)

Control file generation for Oracle9i or higher

Spatial data loaded with 6 digits of precision

Conversion complete : 2539 points processed

The following files have been created:

cities.sql : SQL script to create the table

cities.ctl : Control file for loading the table

cities.dat : Data file

第二步,在数据库中执行shp2sdo生成的.sql脚本:

SQL> @/home/oracle/shp2sdo_linux/cities.sql

第三步,使用SQL*Loader加载shp2sdo生成的.ctl数据:

[oracle@test2 shp2sdo_linux]$ sqlldr spatial/esrichina cities.ctl

SQL*Loader: Release 11.2.0.1.0 - Production on 星期一 4月 19 14:02:26 2010

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

达到提交点 - 逻辑记录计数 64

达到提交点 - 逻辑记录计数 128

达到提交点 - 逻辑记录计数 192

达到提交点 - 逻辑记录计数 256

达到提交点 - 逻辑记录计数 320

达到提交点 - 逻辑记录计数 384

达到提交点 - 逻辑记录计数 448

导入成功后我们可以在Oracle Spatial中看到这个空间表,其中GEOM是导入时设置的几何字段,我们可以打印些数据看一下:

SQL> select geom from cities where rownum<10;

GEOM(SDO_GTYPE, SDO_SRID, SDO_POINT(X, Y, Z), SDO_ELEM_INFO, SDO_ORDINATES)

------------------------------------------------------------------------------------------------------------------------

SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-66.348, -33.316002, NULL), NULL, NULL)

SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-57.140001, -25.387002, NULL), NULL, NULL)

SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-56.428002, -25.452999, NULL), NULL, NULL)

SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-57.150999, -25.623999, NULL), NULL, NULL)

SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-56.450997, -25.784001, NULL), NULL, NULL)

SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-58.176999, -26.182998, NULL), NULL, NULL)

SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-58.295997, -26.867997, NULL), NULL, NULL)

SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-58.986999, -27.457002, NULL), NULL, NULL)

SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(-58.817997, -27.486999, NULL), NULL, NULL)

已选择9行。

至于其它一些第三方的工具,能作数据导入的估计也有不少,不过同时也免费估计就够呛了。


[1] http://www.oracle.com/technology/software/products/spatial/index.html

相关文章:

  • VS2005制作安装包的“系统必备”选项
  • 训练前后bp网络仿真结果分析
  • 如何从SAP中连接其他数据库
  • SQL简繁转换函数
  • 政府部门信息化人员的定位
  • 世界上最成功的人一开始是个程序员-《程序员大本营》1999版
  • 【Vegas原创】asp.net页面作为邮件正文发送
  • bp网络参数说明
  • ASP.NET 2.0发送电子邮件全面剖析之二
  • 构建高性能web之路------读《构建高性能web站点》有感
  • js中for循环的问题
  • Windows Phone 7程序独立存储空间容量测试
  • JS弹出窗口的运用与技巧
  • 英国Windows Phone 7 Tech Day上的演讲概述
  • 我的2006
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • GitUp, 你不可错过的秀外慧中的git工具
  • Hibernate最全面试题
  • JS专题之继承
  • Linux编程学习笔记 | Linux多线程学习[2] - 线程的同步
  • PHP 小技巧
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • VirtualBox 安装过程中出现 Running VMs found 错误的解决过程
  • yii2权限控制rbac之rule详细讲解
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 从输入URL到页面加载发生了什么
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 名企6年Java程序员的工作总结,写给在迷茫中的你!
  • 前嗅ForeSpider中数据浏览界面介绍
  • 实现简单的正则表达式引擎
  • 赢得Docker挑战最佳实践
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • ​LeetCode解法汇总2583. 二叉树中的第 K 大层和
  • ​水经微图Web1.5.0版即将上线
  • # 数据结构
  • # 数论-逆元
  • (pojstep1.1.2)2654(直叙式模拟)
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (算法)求1到1亿间的质数或素数
  • (转)真正的中国天气api接口xml,json(求加精) ...
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • .NET Core 项目指定SDK版本
  • .NET MVC第五章、模型绑定获取表单数据
  • .net php 通信,flash与asp/php/asp.net通信的方法
  • .NET国产化改造探索(三)、银河麒麟安装.NET 8环境
  • @ 代码随想录算法训练营第8周(C语言)|Day53(动态规划)
  • [2013AAA]On a fractional nonlinear hyperbolic equation arising from relative theory
  • [2018-01-08] Python强化周的第一天
  • [2021]Zookeeper getAcl命令未授权访问漏洞概述与解决
  • [AR Foundation] 人脸检测的流程
  • [BROADCASTING]tensor的扩散机制
  • [C#基础知识]专题十三:全面解析对象集合初始化器、匿名类型和隐式类型