Oracle数据库完全入库过程介绍_第1页
Oracle数据库完全入库过程介绍_第2页
Oracle数据库完全入库过程介绍_第3页
Oracle数据库完全入库过程介绍_第4页
Oracle数据库完全入库过程介绍_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一部分简单空间数据入库1 利用shp2sdo分割shapefile文件。假设shapefile文件(集贸市场)和shp2sdo工具存储路径为C:data 打开命令符窗口(开始运行cmd),设置当前目录为存放.shp文件的目录。在命令行窗口中输入:cd C:data 运行SHP2SDO.EXE,参数1:SHAPE文件名(不带扩展名), 参数2:ORACLE中的表名 其他参数,默认运行后生成3中文件(*.SQL,*.DAT,*.CTL) 在命令行中输入:shp2sdo 集贸市场 jimaoshichang2 执行SQL语句。方法一: 重新打开一个命令窗口(开始运行cmd) sqlplus scott/tigerorcl517,连接到数据库。 打开jimaoshichang.sql,复制粘贴,执行SQL语句。DROP TABLE JIMAOSHICHANG;防止有同名的表出现,先假设有这样一张表,将其删除CREATE TABLE JIMAOSHICHANG ( 区县 VARCHAR2(10), 乡镇名 VARCHAR2(10), 村名 VARCHAR2(10), 企业 VARCHAR2(50), GEOM MDSYS.SDO_GEOMETRY);创建表,最后一个字段存储空间数据DELETE FROM USER_SDO_GEOM_METADATA WHERE TABLE_NAME = JIMAOSHICHANG AND COLUMN_NAME = GEOM ;删除元数据表中关于这张表的记录。元数据表中对应与这张表有一条记录INSERT INTO USER_SDO_GEOM_METADATA (TABLE_NAME, COLUMN_NAME, DIMINFO) VALUES (JIMAOSHICHANG, GEOM, MDSYS.SDO_DIM_ARRAY (MDSYS.SDO_DIM_ELEMENT(X, 39373833.909274168, 39519763.519715697, 0.000000050), MDSYS.SDO_DIM_ELEMENT(Y, 4369176.981283660, 4507295.457671791, 0.000000050) ) ); 向元数据表中插入该表的一条元数据COMMIT;方法二:在SQL PLUS中运行jimaoshichang.sql。3 执行控制语句将图层数据入库,导入到前面建的新表当中 打开命令符窗口(开始运行cmd),设置当前目录为存放.shp文件的目录。在命令行窗口中输入:cd C:data 执行sqlldr scott/tigerorcl517 control= jimaoshichang.ctl4 转换空间数据的数据格式执行下列sql语言:EXECUTE SDO_MIGRATE.TO_CURRENT(jimaoshichang表名,GEOM空间字段名); 5 创建空间索引执行下列sql语言:CREATE INDEX jimaoshichangsuoyin索引名ON jimaoshichang要创建索引的表名(GEOM要创建控件索引的空间字段)INDEXTYPE IS MDSYS.SPATIAL_INDEX;第二部分空间数据迁移1 创建一张新表,用来存放jimaoshichang表中的数据DROP TABLE MARKET;CREATE TABLE MARKET ( C_MARKETNAME VARCHAR2(50) , G_FEATURESHAPE MDSYS.SDO_GEOMETRY ); 2将描述数据表(也就是图层)的元数据写入元数据表。DELETE FROM USER_SDO_GEOM_METADATA WHERE TABLE_NAME = MARKET AND COLUMN_NAME = G_FEATURESHAPE ;INSERT INTO USER_SDO_GEOM_METADATA (TABLE_NAME, COLUMN_NAME, DIMINFO) VALUES (MARKET, G_FEATURESHAPE, MDSYS.SDO_DIM_ARRAY (MDSYS.SDO_DIM_ELEMENT(X, 39373833.909274168, 39519763.519715697, 0.000000050), MDSYS.SDO_DIM_ELEMENT(Y, 4369176.981283660, 4507295.457671791, 0.000000050) ) ); 3.往新建的数据表中插入数据 insert into MARKET (C_MARKETNAME,G_FEATURESHAPE)select 企业,GEOM from jimaoshichang;4创建索引CREATE INDEX GIDX_GT_M_MARKETON MARKET (G_FEATURESHAPE)INDEXTYPE IS MDSYS.SPATIAL_INDEX;附:5.CoGisMap的元数据表定义CREATE TABLE DBSCHEMA_OGIS_FEATURE_TABLES (GEOM_TABLE_NAME VARCHAR2(129 byte) NOT NULL, GEOM_TABLE_TYPE VARCHAR2(129 byte) NOT NULL, GEOM_COLUMN_NAME VARCHAR2(129 byte) NOT NULL, GEOM_TYPE NUMBER(10) NOT NULL, GEOM_EXTENT MDSYS.SDO_GEOMETRY DEFAULT MDSYS.SDO_GEOMETRY( 2003, - 2-dimensional polygon NULL, NULL, MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,3), - one rectangle (1003 = exterior) MDSYS.SDO_ORDINATE_ARRAY(0,0,1,1) ) NOT NULL, CONSTRAINT KEY_1_1_1 PRIMARY KEY(GEOM_TABLE_NAME)6在CoGisMap的元数据表中填入元数据。执行脚本:INSERT INTO DBSCHEMA_OGIS_FEATURE_TABLES (GEOM_TABLE_NAME ,GEOM_TABLE_TYPE ,GEOM_COLUMN_NAME , GEOM_TYPE ) VALUES (GT_M ,TABLE ,GEOM ,4 )至此,这个空间数据表就可以在控件中显示了。附件 关于空间数据表的创建和删除- 创建空间数据表的脚本:- 表中要有一列定义为空间数据存储结构(MDSYS.SDO_GEOMETRY)。CREATE TABLE DEMO.TEST_GEOM(ObjectID NUMBER,RecordID NUMBER,OperateCHAR(2),ChangeDateDATE,GEOMMDSYS.SDO_GEOMETRY); - 创建空间数据表之后,要将描述数据表(也就是图层)- 的元数据写入元数据表。- 各列含义分别为:- 空间数据表的名称,- 空间所在列的名称,- 空间数据表(图层)的维度信息,-参考坐标系索引。- 其中图层维度信息包含24条记录,记录的各列含义如下:- 维度名称(X,Y或Z)-最小值(NUMBER)-最大值(NUMBER)-容差(NUMBER)INSERT INTO USER_SDO_GEOM_METADATAVALUES (TEST_GEOM,GEOM,MDSYS.SDO_DIM_ARRAY( MDSYS.SDO_DIM_ELEMENT(X, 1144.804047, 3762.220078, 0.005),MDSYS.SDO_DIM_ELEMENT(Y, 66.337745, 2894.969755, 0.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论