<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 175  文章 - 202  trackbacks - 0
    <2010年11月>
    31123456
    78910111213
    14151617181920
    21222324252627
    2829301234
    567891011

    第一個Blog,記錄哈哈的生活

    常用鏈接

    留言簿(16)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    收藏夾

    Java links

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    一、簡介

           SQL*LOADERORACLE的數(shù)據(jù)加載工具,通常用來將操作系統(tǒng)文件遷移到ORACLE數(shù)據(jù)庫中。SQL*LOADER是大型數(shù)據(jù)倉庫選擇使用的加載方法,因為它提供了最快速的途徑(DIRECTPARALLEL)。使用前提是必須存在目標(biāo)表。

    二、SQL*LOADER使用方法

        Window系統(tǒng)下,SQL Loader的命令為sqlldr,在UNIX下一般為sqlldr/sqlload

    有效的關(guān)鍵字:   
    userid   --   ORACLE   用戶名/口令   
    control   --   控制文件名  
    log   --   日志文件名 
    bad   --   錯誤文件名,如果有的數(shù)據(jù)沒有被處理,將會出現(xiàn)在這里   
    data   --   數(shù)據(jù)文件名  
    discard   --   廢棄文件名 
    discardmax   --   允許丟棄數(shù)據(jù)的數(shù)目   (全部默認(rèn))   
    skip   --   要跳過的邏輯記錄的數(shù)目   (默認(rèn)0)   
    load   --   要加載的邏輯記錄的數(shù)目   (全部默認(rèn))   
    errors   --   允許的錯誤記錄數(shù)目  (默認(rèn)50)   
    rows   --   常規(guī)路徑綁定數(shù)組中或直接路徑保存數(shù)據(jù)間的行數(shù)  (默認(rèn):   常規(guī)路徑   64,   所有直接路徑)   
    bindsize   --    常規(guī)路徑綁定數(shù)組的大小,以字節(jié)計算(默認(rèn)65536)   
    silent   --   運行過程中隱藏的信息   (header,feedback,errors,discards,partitions)   
    direct   --   使用直接路徑   (默認(rèn)FALSE)   
    parfile   --   參數(shù)文件:包含參數(shù)說明的文件的名稱
    parallel   --   執(zhí)行并行加載   (默認(rèn)FALSE)   

    file -- 要從以下對象中分配區(qū)的文件
    skip_unusable_indexes -- 不允許/允許使用無用的索引或索引分區(qū)  (默認(rèn) FALSE)
    skip_index_maintenance -- 沒有維護索引, 將受到影響的索引標(biāo)記為無用  (默認(rèn) FALSE)

    commit_discontinued -- 提交加載中斷時已加載的行  (默認(rèn) FALSE)
    readsize -- 讀取緩沖區(qū)的大小               (默認(rèn) 1048576)
    external_table -- 使用外部表進行加載; NOT_USED, GENERATE_ONLY, EXECUTE  (默認(rèn) NOT_USED)
    columnarrayrows -- 直接路徑列數(shù)組的行數(shù)  (默認(rèn) 5000)
    streamsize -- 直接路徑流緩沖區(qū)的大小 (以字節(jié)計)  (默認(rèn) 256000)
    multithreading -- 在直接路徑中使用多線程
    resumable -- 啟用或禁用當(dāng)前的可恢復(fù)會話  (默認(rèn) FALSE)
    resumable_name -- 有助于標(biāo)識可恢復(fù)語句的文本字符串
    resumable_timeout -- RESUMABLE 的等待時間 (以秒計)  (默認(rèn) 7200)
    date_cache -- 日期轉(zhuǎn)換高速緩存的大小 (以條目計)  (默認(rèn) 1000)

    PLEASE NOTE: 命令行參數(shù)可以由位置或關(guān)鍵字指定。前者的例子是 'sqlload scott/tiger foo'; 后一種情況的一個示例是 'sqlldr control=foo userid=scott/tiger'.位置指定參數(shù)的時間必須早于但不可遲于由關(guān)鍵字指定的參數(shù)。例如,允許 'sqlldr scott/tiger control=foo logfile=log', 但是不允許 'sqlldr scott/tiger control=foo log', 即使參數(shù) 'log' 的位置正確。

    三、SQL*LOADER實例

    控制文件腳本實例:

    load data    --控制文件表示
    infile 'e:\aa.csv'    --有導(dǎo)入的數(shù)據(jù)文件名
    append into table TBL_SYNC_CORE_INSURANCE    --向表TBL_SYNC_CORE_INSURANCE中追加記錄
    fields terminated by ','  --指定用逗號分隔
    OPTIONALLY ENCLOSED BY '"'
    TRAILING NULLCOLS  
    --表的字段沒有對應(yīng)值時允許為空
    *************下面是表的字段
    (
      COVERAGE_CODE,
      PRODUCT_NO,
      NAME,
      MAIN_COVERAGE_CODE,
      KIND,
      CREATOR,
      CREATED_DATE,
      MODIFIER,
      MODIFIED_DATE
    )

          備注:數(shù)據(jù)導(dǎo)入的方式上例中用的append,有一下幾種:insert,為缺省方式,在數(shù)據(jù)裝載開始時要求表為空;append,在表中追加新記錄;replace,刪除舊記錄,替換成新裝載的記錄   ;truncate,同replace,會用truncate語句刪除現(xiàn)存數(shù)據(jù)

          在命令行提示符下使用SQL*Loader命令實現(xiàn)數(shù)據(jù)的輸入:

          sqlldr   userid=用戶名/口令@服務(wù)名   control='e:\control.ctl'   log=e:\log.txt   bad=e:\bad.txt

          如果本地安裝了oracle服務(wù)端,可以不寫服務(wù)名;log和bad不寫,默認(rèn)生成在當(dāng)前目錄下。

    四、其他導(dǎo)入方法

          利用PLSQL   Developer:

          在單個文件不大的情況下(少于100000行),并且目的表結(jié)構(gòu)已經(jīng)存在的情況下-----對于excel而言肯定不會超過了,因為excel文件的最大行為65536-----可以全選數(shù)據(jù)COPY   ,然后用PLSQL   Developer工具。

          1   在PLSQL   Developer的sql   window里輸入select   *   from   test   for   update;   
          2   按F8執(zhí)行;
          3   打開鎖,   再按一下加號.   鼠標(biāo)點到第一列的列頭,使全列成選中狀態(tài),然后粘貼,最后COMMIT提交即可。

    五、補充在Linux下使用 sqlldr 的注意事項

    在執(zhí)行 sqlldr 前,需要進行以下步驟

    1. 設(shè)置 ORACLE_HOME 環(huán)境變量,如 export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
    2. 設(shè)置ORACLE編碼格式,將本地字符集和ORACLE字符集設(shè)置為一致,如export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"
    3. 將csv文件轉(zhuǎn)碼成相應(yīng)的編碼

    然后再使用 sqlldr 進行數(shù)據(jù)導(dǎo)入

    posted on 2010-11-07 15:42 哈哈的日子 閱讀(4158) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲最大成人网色| 一级成人a毛片免费播放| 久久伊人久久亚洲综合| 一级成人a免费视频| 亚洲人成电影网站| 久久精品亚洲日本波多野结衣| 亚洲人成电影网站色| 国产亚洲精彩视频| 欧洲人成在线免费| 性生交片免费无码看人| 国产18禁黄网站免费观看| 中文字幕第13亚洲另类| 蜜芽亚洲av无码精品色午夜| 亚洲无人区码一二三码区别图片| 亚洲成a∧人片在线观看无码| 一级毛片免费一级直接观看| 免费不卡在线观看AV| 好男人www免费高清视频在线| 亚洲男人第一无码aⅴ网站| 久久青青草原亚洲av无码app| 在线播放亚洲精品| 91大神免费观看| 亚洲熟妇中文字幕五十中出| 亚洲AV成人噜噜无码网站| 中文在线日本免费永久18近| 成人爽A毛片免费看| 337p欧洲亚洲大胆艺术| 精品熟女少妇aⅴ免费久久| 在线A级毛片无码免费真人| 亚洲AV无码一区二区三区DV| 色婷婷精品免费视频| 亚洲人成网站免费播放| 91亚洲国产在人线播放午夜| 很黄很污的网站免费| 国产日韩成人亚洲丁香婷婷| 一区二区免费在线观看| 日本高清免费不卡视频| 亚洲精品无码专区| 国产午夜鲁丝片AV无码免费| 中文字幕乱码亚洲无线三区| 国产精品无码免费播放|