liujun
路人甲
路人甲
  • 注册日期2007-04-08
  • 发帖数87
  • QQ
  • 铜币391枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:2953回复:3

使用DGN2SDO装载数据到Oracle Spatial

楼主#
更多 发布于:2007-06-29 14:57
<P>DGN2SDO是Bentley在GSX(GeoSpatial Extension)中提供的命令行数据装载工具。它可以把DGN数据转换为SQL Loader脚本。</P>
<P>以下通过一个例子介绍它的使用。首先我们可以创建一个批处理文件以方便我们多次使用。</P>
<P>文件名:load2sdo.bat</P>
<P>文件内容:</P>
<P>set  dgn2sdo=C:\ms08090365en\GeospatialExtension\bin\dgn2sdo.exe<br></P>
<P>set inmetadb=gsx/gsx@dev</P>
<P>%dgn2sdo% IN_FILE=C:\usa.dgn IN_TYPE=XFM IN_METADB=%inmetadb% IN_WU=usa_imp IN_FEATURE=roadtrl020</P>
<P>DGN2SDO支持DGN/XFM两种类型数据的转换,必须的参数为IN_TYPE、IN_FILE、IN_METADB。IN_TYPE的值为DGN或XFM;IN_FILE的值为文件路径名列表,可以使用通配符;IN_METADB为Oracle数据库连接信息。</P>
<P>对于DGN模式,必须的参数为IN_GEOM_TYPE、OUT_GEOM_TABLE。IN_GEOM_TYPE的值为Oracle geometry类型;OUT_GEOM_TABLE的值为输出的表名。</P>
<P>对于XFM模式,必须的参数为IN_WU、IN_FEATURE。IN_WU的值为XFM工作空间名;IN_FEATURE为转换的要素名称列表。</P>
<P>其他可选参数参见文档。</P>
<P>运行load2sdo.bat会生成output目录,里面有日志和SQL Loader文件(.SQL, .CTL, .DAT)。</P>
<P>然后运行生成的MasterLoad.BAT文件,将会自动加载数据到Oracle数据库。</P>
喜欢0 评分0
liujun
路人甲
路人甲
  • 注册日期2007-04-08
  • 发帖数87
  • QQ
  • 铜币391枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2007-06-29 15:07
<P>DGN2SDO.log内容:</P>
<P>2007-6-29 12:56:56<BR>Output directory has been set to (C:\output)<BR>Loading the Geospatial Extension<BR>Opening design file "C:\usa.dgn"<BR>Obtaining instance cursor<BR><ECCompoundCriteria combinationOperator="COMBO_Or"><BR>    <criteriaList><BR>        <ECClassCriteria className="roadtrl020" /><BR>    </criteriaList><BR></ECCompoundCriteria><BR>Commencing translation<BR>Total instances read = 47014<BR>Total instances written = 47014<BR>Translation completed<BR>Closed design file "C:\usa.dgn"<BR>Generating scripts for (roadtrl020). <BR>Generating master batch file (MasterLoad). <BR>2007-6-29 13:01:34<BR></P>
<P>可以看到转换了47014个要素,耗时4分38秒(在MS VPC2004中运行的结果)。</P>
举报 回复(0) 喜欢(0)     评分
liujun
路人甲
路人甲
  • 注册日期2007-04-08
  • 发帖数87
  • QQ
  • 铜币391枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2007-06-29 15:09
<P>GeomTableLoad_roadtrl020.log内容:</P>
<P><BR>SQL*Loader: Release 10.2.0.1.0 - Production on Fri Jun 29 13:11:46 2007</P>
<P>Copyright (c) 1982, 2005, Oracle.  All rights reserved.</P>
<P>Control File:   C:\output\GeomTableLoad_roadtrl020.CTL2A<BR>Data File:      Feature_ROADTRL020.dat<BR>  Bad File:     C:\output\Feature_ROADTRL020.bad<BR>  Discard File:  none specified<BR> <BR> (Allow all discards)</P>
<P>Number to load: ALL<BR>Number to skip: 0<BR>Errors allowed: 50<BR>Bind array:     64 rows, maximum of 256000 bytes<BR>Continuation:   1:1 = 0X23(character '#'), in next physical record<BR>Path used:      Conventional</P>
<P>Table ROADTRL020, loaded from every logical record.<BR>Insert option in effect for this table: REPLACE<BR>TRAILING NULLCOLS option in effect</P>
<P>   Column Name                  Position   Len  Term Encl Datatype<BR>------------------------------ ---------- ----- ---- ---- ---------------------<BR>FNODE_                              FIRST     *   |       CHARACTER            <BR>TNODE_                               NEXT     *   |       CHARACTER            <BR>LPOLY_                               NEXT     *   |       CHARACTER            <BR>RPOLY_                               NEXT     *   |       CHARACTER            <BR>LENGTH                               NEXT     *   |       CHARACTER            <BR>ROADTRL020                           NEXT     *   |       CHARACTER            <BR>FEATURE                              NEXT     *   |       CHARACTER            <BR>    NULL if FEATURE = BLANKS<BR>NAME                                 NEXT     *   |       CHARACTER            <BR>    NULL if NAME = BLANKS<BR>STATE_FIPS                           NEXT     *   |       CHARACTER            <BR>    NULL if STATE_FIPS = BLANKS<BR>STATE                                NEXT     *   |       CHARACTER            <BR>    NULL if STATE = BLANKS<BR>OGC_GEOMETRY                      DERIVED     *           COLUMN OBJECT        </P>
<P>*** Fields in OGC_GEOMETRY<BR>SDO_GTYPE                            NEXT     *   |       CHARACTER            <BR>SDO_SRID                             NEXT     *   |       CHARACTER            <BR>SDO_ELEM_INFO                     DERIVED     *   /       VARRAY               </P>
<P>*** Fields in OGC_GEOMETRY.SDO_ELEM_INFO<BR>E                                   FIRST     *   |       CHARACTER            <BR>*** End of fields in OGC_GEOMETRY.SDO_ELEM_INFO</P>
<P>SDO_ORDINATES                     DERIVED     *   /       VARRAY               </P>
<P>*** Fields in OGC_GEOMETRY.SDO_ORDINATES<BR>O                                   FIRST     *   |       CHARACTER            <BR>*** End of fields in OGC_GEOMETRY.SDO_ORDINATES</P>
<P>*** End of fields in OGC_GEOMETRY</P>
<P>XFM_ID                               NEXT     *   |       CHARACTER            <BR>    NULL if XFM_ID = BLANKS</P>
<P><BR>Table ROADTRL020:<BR>  47014 Rows successfully loaded.<BR>  0 Rows not loaded due to data errors.<BR>  0 Rows not loaded because all WHEN clauses were failed.<BR>  0 Rows not loaded because all fields were null.</P>
<P><BR>Space allocated for bind array:                 248192 bytes(64 rows)<BR>Read   buffer bytes: 1048576</P>
<P>Total logical records skipped:          0<BR>Total logical records read:         47014<BR>Total logical records rejected:         0<BR>Total logical records discarded:        0</P>
<P>Run began on Fri Jun 29 13:11:46 2007<BR>Run ended on Fri Jun 29 13:12:15 2007</P>
<P>Elapsed time was:     00:00:28.68<BR>CPU time was:         00:00:08.36<BR></P>
<P>创建了一个新的ROADTRL020空间数据表。</P>
举报 回复(0) 喜欢(0)     评分
zchilde
路人甲
路人甲
  • 注册日期2007-06-03
  • 发帖数1
  • QQ
  • 铜币111枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2007-06-30 17:28
dddddddddddddddddd
举报 回复(0) 喜欢(0)     评分
游客

返回顶部