日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Oracle數(shù)據(jù)庫sqlload用法的相關(guān)知識介紹

Oracle數(shù)據(jù)庫sqlload用法的相關(guān)知識是本文我們主要要介紹的內(nèi)容,那么什么是sqlload呢?看完下面的例子我們就知道了。當(dāng)用Oracle數(shù)據(jù)庫處理百萬級別數(shù)據(jù)時,選擇sqlload應(yīng)該是比較好的方案。下面是自學(xué)sqlload的例子,供初學(xué)者參考。

1、在哪兒運(yùn)行sqlload?

首先,電腦上至少裝有oracle客戶端程序,在這里就可以執(zhí)行sqlload,運(yùn)行-->cmd--->sqlldr。里面有很多注釋可以自己參考。

2、控制文件

寫sqlload需要的控制文件.ctl或者.cvs格式。

control.ctl內(nèi)容:

 
 
 
 
  1. LOAD DATA  
  2. INFILE 'f:\TL_FUND_MMS_BATCH.txt'  
  3. BADFILE 'f:\BAD_TL_FUND_MMS_BATCH1.dat'  
  4. APPEND  
  5. INTO TABLE tl_fund_mms_batch  
  6. Fields terminated by ","   
  7. Optionally enclosed by '"'  
  8. trailing nullcols   
  9. (   
  10.  NUMBATCHSEQID ,  
  11.  VC2BATCHNAME,  
  12.  VC2RESOURCEID,  
  13.  NUMCOUNTTOTAL ,  
  14.  NUMCOUNTSUCS,  
  15.  NUMCOUNTLONG ,  
  16.  NUMCOUNTFAILD ,  
  17.  VC2BILLPATH,  
  18.  NUMCREATEUSERID ,  
  19.  NUMSENDUSERID ,   
  20.  NUMDEALFLAG,  
  21.  DATCREATETIME DATE "YYYY-MM-DD HH24:MI:SS",  
  22.  DATSENDTIME DATE "YYYY-MM-DD HH24:MI:SS"  

3、數(shù)據(jù)文件

 
 
 
 
  1. TL_FUND_MMS_BATCH.txt內(nèi)容:103,"肖測試", "0111022109240241310006", 1, 1, 0, 0,  
  2.  "../webapps/billFiles\data(2).xml", 900000, 900000, 2,2011-4-28 15:50:26,2011-4-28 15:50:26 

4、執(zhí)行命令

我把所有文件都放到了F盤:

執(zhí)行命令:sqlldr mjjzh/mjjzh@orcl f:\control.ctl log=f:\log.log

5、查看日志

如果執(zhí)行完命令,在指定的目錄下就會生成日志信息,如果執(zhí)行過程中有錯誤,就會在相應(yīng)的目錄下生成壞數(shù)據(jù)文件,有錯誤的時候也會打印這句話:達(dá)到提交點(diǎn) - 邏輯記錄計(jì)數(shù) 1。不要認(rèn)為打印了這句就認(rèn)為執(zhí)行成功了。

log.log內(nèi)容:

 
 
 
 
  1. SQL*Loader: Release 10.2.0.1.0 - Production on 星期四 5月 12 17:01:38 2011  
  2. Copyright (c) 1982, 2005, Oracle.  All rights reserved.  
  3. 控制文件:      f:\control.ctl  
  4. 數(shù)據(jù)文件:      f:\TL_FUND_MMS_BATCH.txt  
  5. 錯誤文件:    f:\BAD_TL_FUND_MMS_BATCH1.dat  
  6. 廢棄文件:    未作指定  
  7. (可廢棄所有記錄)  
  8. 要加載的數(shù): ALL  
  9. 要跳過的數(shù): 0  
  10. 允許的錯誤: 50  
  11. 綁定數(shù)組: 64 行, 最大 256000 字節(jié)  
  12. 繼續(xù):    未作指定  
  13. 所用路徑:       常規(guī)  
  14. 表 TL_FUND_MMS_BATCH,已加載從每個邏輯記錄  
  15. 插入選項(xiàng)對此表 APPEND 生效  
  16. TRAILING NULLCOLS 選項(xiàng)生效  
  17.    列名                        位置      長度  中止 包裝數(shù)據(jù)類型  
  18. ------------------------------ ---------- ----- ---- -------------------------  
  19. NUMBATCHSEQID                       FIRST     *   ,  O (") CHARACTER              
  20. VC2BATCHNAME                         NEXT     *   ,  O (") CHARACTER              
  21. VC2RESOURCEID                        NEXT     *   ,  O (") CHARACTER              
  22. NUMCOUNTTOTAL                        NEXT     *   ,  O (") CHARACTER              
  23. NUMCOUNTSUCS                         NEXT     *   ,  O (") CHARACTER              
  24. NUMCOUNTLONG                         NEXT     *   ,  O (") CHARACTER              
  25. NUMCOUNTFAILD                        NEXT     *   ,  O (") CHARACTER              
  26. VC2BILLPATH                          NEXT     *   ,  O (") CHARACTER              
  27. NUMCREATEUSERID                      NEXT     *   ,  O (") CHARACTER              
  28. NUMSENDUSERID                        NEXT     *   ,  O (") CHARACTER              
  29. NUMDEALFLAG                          NEXT     *   ,  O (") CHARACTER              
  30. DATCREATETIME                        NEXT     *   ,  O (") DATE YYYY-MM-DD HH24:MI:SS  
  31. DATSENDTIME                          NEXT     *   ,  O (") DATE YYYY-MM-DD HH24:MI:SS  
  32. 記錄 1: 被拒絕 - 表 TL_FUND_MMS_BATCH 出現(xiàn)錯誤。  
  33. ORA-00001: unique constraint (MJJZH.PK_TL_FUND_MMS_BATCH) violated  
  34. 注:ORA-00001: unique constraint (MJJZH.PK_TL_FUND_MMS_BATCH) violated,是因?yàn)橹麈I重復(fù)。  
  35. 表 TL_FUND_MMS_BATCH:  
  36. 0 行 加載成功。  
  37. 由于數(shù)據(jù)錯誤, 1 行 沒有加載。  
  38. 由于所有 WHEN 子句失敗, 0 行 沒有加載。  
  39. 由于所有字段都為空的, 0 行 沒有加載。  
  40. 為綁定數(shù)組分配的空間:                214656 字節(jié) (64 行)  
  41. 讀取   緩沖區(qū)字節(jié)數(shù): 1048576  
  42. 跳過的邏輯記錄總數(shù):          0  
  43. 讀取的邏輯記錄總數(shù):             1  
  44. 拒絕的邏輯記錄總數(shù):          1  
  45. 廢棄的邏輯記錄總數(shù):        0  
  46. 從 星期四 5月  12 17:01:38 2011 開始運(yùn)行  
  47. 在 星期四 5月  12 17:01:39 2011 處運(yùn)行結(jié)束  
  48. 經(jīng)過時間為: 00: 00: 01.20  
  49. CPU 時間為: 00: 00: 00.06 

6、注意事項(xiàng):

①、日期格式轉(zhuǎn)換:表中的最后兩個字段是日期格式,這里需做 DATCREATETIME DATE "YYYY-MM-DD HH24:MI:SS", 轉(zhuǎn)換,相當(dāng)于to_date()。且數(shù)據(jù)文件中是2011-4-28 15:50:26格式,不是"2011-4-28 15:50:26"格式。否則會出錯。(后來測試的時候發(fā)現(xiàn)帶上也不會出錯了,奇怪。)

②、插入數(shù)據(jù)庫中的內(nèi)容包含":如果數(shù)據(jù)文件中是"肖測試",控制文件中需加上Optionally enclosed by '"',這樣在插入數(shù)據(jù)庫時,內(nèi)容就不包含"",下面是加Optionally enclosed by '"'與不加的效果。

關(guān)于Oracle數(shù)據(jù)庫sqlload用法的相關(guān)知識就介紹到這里了,希望本次的介紹能夠?qū)δ兴斋@!

【編輯推薦】

  1. Oracle學(xué)習(xí)筆記之DECODE及常用窗口函數(shù)
  2. Oracle數(shù)據(jù)庫各類控制語句的使用詳細(xì)介紹
  3. Oracle數(shù)據(jù)庫日期范圍查詢的兩種實(shí)現(xiàn)方式
  4. Oracle數(shù)據(jù)庫只讀模式的CACHE BUFFERS CHAINS測試
  5. Oracle 10g數(shù)據(jù)庫中UNDO_RETENTION參數(shù)的使用詳解

當(dāng)前文章:Oracle數(shù)據(jù)庫sqlload用法的相關(guān)知識介紹
網(wǎng)頁地址:http://www.dlmjj.cn/article/djoccio.html