oracle sequrnce_Oracle Sqlldr简单用法
Oracle數(shù)據(jù)庫sqlload用法的相關(guān)知識(shí)是本文我們主要要介紹的內(nèi)容,那么什么是sqlload呢?看完下面的例子我們就知道了。當(dāng)用Oracle數(shù)據(jù)庫處理百萬級(jí)別數(shù)據(jù)時(shí),選擇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)容:
LOAD?DATA
INFILE?'f:\TL_FUND_MMS_BATCH.txt'
BADFILE?'f:\BAD_TL_FUND_MMS_BATCH1.dat'
APPEND
INTO?TABLE?tl_fund_mms_batch
Fields?terminated?by?","
Optionally?enclosed?by?'"'
trailing?nullcols
(
NUMBATCHSEQID?,
VC2BATCHNAME,
VC2RESOURCEID,
NUMCOUNTTOTAL?,
NUMCOUNTSUCS,
NUMCOUNTLONG?,
NUMCOUNTFAILD?,
VC2BILLPATH,
NUMCREATEUSERID?,
NUMSENDUSERID?,
NUMDEALFLAG,
DATCREATETIME?DATE?"YYYY-MM-DD?HH24:MI:SS",
DATSENDTIME?DATE?"YYYY-MM-DD?HH24:MI:SS"
)
3、數(shù)據(jù)文件
TL_FUND_MMS_BATCH.txt內(nèi)容:103,"肖測(cè)試",?"0111022109240241310006",?1,?1,?0,?0,
"../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í)行完命令,在指定的目錄下就會(huì)生成日志信息,如果執(zhí)行過程中有錯(cuò)誤,就會(huì)在相應(yīng)的目錄下生成壞數(shù)據(jù)文件,有錯(cuò)誤的時(shí)候也會(huì)打印這句話:達(dá)到提交點(diǎn) - 邏輯記錄計(jì)數(shù) 1。不要認(rèn)為打印了這句就認(rèn)為執(zhí)行成功了。
log.log內(nèi)容:
SQL*Loader:?Release?10.2.0.1.0?-?Production?on?星期四?5月?12?17:01:38?2011
Copyright?(c)?1982,?2005,?Oracle.??All?rights?reserved.
控制文件:??????f:\control.ctl
數(shù)據(jù)文件:??????f:\TL_FUND_MMS_BATCH.txt
錯(cuò)誤文件:????f:\BAD_TL_FUND_MMS_BATCH1.dat
廢棄文件:????未作指定
(可廢棄所有記錄)
要加載的數(shù):?ALL
要跳過的數(shù):?0
允許的錯(cuò)誤:?50
綁定數(shù)組:?64?行,?最大?256000?字節(jié)
繼續(xù):????未作指定
所用路徑:???????常規(guī)
表?TL_FUND_MMS_BATCH,已加載從每個(gè)邏輯記錄
插入選項(xiàng)對(duì)此表?APPEND?生效
TRAILING?NULLCOLS?選項(xiàng)生效
列名????????????????????????位置??????長(zhǎng)度??中止?包裝數(shù)據(jù)類型
------------------------------?----------?-----?----?-------------------------
NUMBATCHSEQID???????????????????????FIRST?????*???,??O?(")?CHARACTER
VC2BATCHNAME?????????????????????????NEXT?????*???,??O?(")?CHARACTER
VC2RESOURCEID????????????????????????NEXT?????*???,??O?(")?CHARACTER
NUMCOUNTTOTAL????????????????????????NEXT?????*???,??O?(")?CHARACTER
NUMCOUNTSUCS?????????????????????????NEXT?????*???,??O?(")?CHARACTER
NUMCOUNTLONG?????????????????????????NEXT?????*???,??O?(")?CHARACTER
NUMCOUNTFAILD????????????????????????NEXT?????*???,??O?(")?CHARACTER
VC2BILLPATH??????????????????????????NEXT?????*???,??O?(")?CHARACTER
NUMCREATEUSERID??????????????????????NEXT?????*???,??O?(")?CHARACTER
NUMSENDUSERID????????????????????????NEXT?????*???,??O?(")?CHARACTER
NUMDEALFLAG??????????????????????????NEXT?????*???,??O?(")?CHARACTER
DATCREATETIME????????????????????????NEXT?????*???,??O?(")?DATE?YYYY-MM-DD?HH24:MI:SS
DATSENDTIME??????????????????????????NEXT?????*???,??O?(")?DATE?YYYY-MM-DD?HH24:MI:SS
記錄?1:?被拒絕?-?表?TL_FUND_MMS_BATCH?出現(xiàn)錯(cuò)誤。
ORA-00001:?unique?constraint?(MJJZH.PK_TL_FUND_MMS_BATCH)?violated
注:ORA-00001:?unique?constraint?(MJJZH.PK_TL_FUND_MMS_BATCH)?violated,是因?yàn)橹麈I重復(fù)。
表?TL_FUND_MMS_BATCH:
0?行?加載成功。
由于數(shù)據(jù)錯(cuò)誤,?1?行?沒有加載。
由于所有?WHEN?子句失敗,?0?行?沒有加載。
由于所有字段都為空的,?0?行?沒有加載。
為綁定數(shù)組分配的空間:????????????????214656?字節(jié)?(64?行)
讀取???緩沖區(qū)字節(jié)數(shù):?1048576
跳過的邏輯記錄總數(shù):??????????0
讀取的邏輯記錄總數(shù):?????????????1
拒絕的邏輯記錄總數(shù):??????????1
廢棄的邏輯記錄總數(shù):????????0
從?星期四?5月??12?17:01:38?2011?開始運(yùn)行
在?星期四?5月??12?17:01:39?2011?處運(yùn)行結(jié)束
經(jīng)過時(shí)間為:?00:?00:?01.20
CPU?時(shí)間為:?00:?00:?00.06
6、注意事項(xiàng):
①、日期格式轉(zhuǎn)換:表中的最后兩個(gè)字段是日期格式,這里需做?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"格式。否則會(huì)出錯(cuò)。(后來測(cè)試的時(shí)候發(fā)現(xiàn)帶上也不會(huì)出錯(cuò)了,奇怪。)
②、插入數(shù)據(jù)庫中的內(nèi)容包含":如果數(shù)據(jù)文件中是"肖測(cè)試",控制文件中需加上Optionally enclosed by '"',這樣在插入數(shù)據(jù)庫時(shí),內(nèi)容就不包含"",下面是加Optionally enclosed by '"'與不加的效果。
總結(jié)
以上是生活随笔為你收集整理的oracle sequrnce_Oracle Sqlldr简单用法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: gis地理加权回归步骤_地理加权回归权重
- 下一篇: 地图慧制作地图(谷歌卫星高清地图)