熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

SQL&Loader可把文件中的數據裝載到OR

2013-11-15 09:48:57  來源: JSP教程 

  SQL&Loader是ORACLE提供的一種工具用這一工具可把外部文件中的數據裝載到ORACLE的數據庫中利用這一原理可以把FOXPRO的數據導出到文本文件再利用SQL*Loader裝載到ORACLE數據庫中
  
   從FOXPRO中導出數據
  打開file/exportType選擇delimited text在To項中給出導出的數據文件名字段間以區分開Fro項選擇要導出的FOXPRO數據庫文件並選擇數據文件存儲位置
  打開Options根據需要設置ScopeForWhile和Fields點擊OK進行導出
  
  例如導出人員管理數據庫中的序號姓名性別出生日期數據文件保存為ryctl文件名其內容如下
  
  白余量//
  李漢為/ /
  郭正林//
     
  
   編輯數據文件為控制文件格式
  LOAD DATA
  INFILE *
  REPLACE
  INTO TABLE wxryb
  FIELDS TERMINATED BY OPTIONALLY ENCLOSED
  (xhnamesexbirth date() mm/dd/yyyy)
  BEGINDATA
  白余量//
  李漢為/ /
  郭正林//
     
  
  其中INFILE * 表示數據在控制文件後部REPLACE是數據裝載方式還 可以是INSERTAPPEND等 wxryb 是ORACLE數據庫表名 (xhnamesexbirth date() mm/dd/yyyy)是wxryb中的字段名 mm/dd/yyyy是被轉換日期數據的格式BEGINDATA以後是要裝載的數據
  
   把數據文件ftp到數據庫服務器上
   以oracle用戶身份登錄到數據庫服務器
   在命令行輸入
  sqlldr userid=refine/refine control=ryctl log=ry
  log bad=rybad執行數據裝載
  其中userid指定的用戶對wxryb要有一定權限可指定log文件和bad文件 對裝載過程進行檢查本命令 還可帶有多個參數進行裝載控制可在命令行 輸入sqlldr查閱
  
  對於FOXPRO的MEMO字段數據可利用COPY MEMO命令導出到文本文件再按上述方法裝入如果數據裝載不成功請查閱log文件和bad文件其原因多與數據類型的匹配和長度有關對於FOXPRO日期型數據如果為空(如上例第條記錄)ORACLE不識別/ /則裝載會失敗因此在從FOXPRO導出前我先給所有birth為空的記錄賦予一個日期//待裝載成功後只需一個命令
  
  update wxryb set birth= where birth=?JAN
  
  即可在wxryb中恢復相關記錄的birth空值

From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19161.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.