createtabletest(2num_colnumber(10),3char_colchar(10),4var_colvarchar2(10),5date_coldate,6" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

用SQLLDR來裝載CLOB/BLOB列的控制文件例子

系統 2209 0
Oracle的SQLLDR是用來將文本文件中的記錄裝載到數據庫中的工具, 其并行(Parallel),直接(Direct)的裝載模式是目前所知最快的方式. 不過用于指定文本格式的控制文件有點難于寫, 我在寫時也經常需要查閱文檔. 為了方便我還是在這兒寫一個例子吧, 下面是樣表的結構:
SQL> create table test(
2 num_col number(10),
3 char_col char(10),
4 var_col varchar2(10),
5 date_col date,
6 blob_col blob,
7 clob_col clob,
8 raw_col raw(20)
9 );

Table Created.

在這個例子中有CLOB/BLOB列, 因此直接模式不能用, 還需要將ROWS參數設為1, 下面是SQLLDR用的控制文件:

--
-- Generated by AUL/MyDUL, for table hr.test
--
OPTIONS(DIRECT=TRUE,READSIZE=4194304,ERRORS=-1,SKIP=1,ROWS=50000)
LOAD DATA
INFILE 'hr_test.txt' "STR X'0d0a'"
INTO TABLE TEST
FIELDS TERMINATED BY X'7c' TRAILING NULLCOLS
(
NUM_COL CHAR ,
CHAR_COL CHAR(10) ,
VAR_COL CHAR(10) ,
DATE_COL DATE "YYYY-MM-DD HH24:MI:SS" ,
LOBF_00005 FILLER CHAR(32),
BLOB_COL LOBFILE(LOBF_00005) TERMINATED BY EOF ,
LOBF_00006 FILLER CHAR(32),
CLOB_COL LOBFILE(LOBF_00006) TERMINATED BY EOF ,
RAW_COL CHAR
)

當然我給的參數肯定不是最好的, 請你試了后告訴我.

當使用sqlldr加載很長的字符串(超過4000)到表中的clob類型中時,老是報錯: 數據文件的字段超出最大長度.查找相關資料后得知,sqlldr每次讀入文件中數據流的數據類型默認為CHAR ,長度為 255 .所以只要超過255字符的段都會報這個錯.解決方法很簡單,在控制文件中字段后添加上char(1000000),例如:

LOAD DATA
INFILE *
INTO TABLE DEMO
TRUNCATE
FIELDS TERMINATED BY ','
(d1 ,
d2 char(1000000)
)

其中表demo的列d2是clob類型,當然1000000只是隨便用的一個大數字,只要保證加載的長度不超這個數字就成.

------------------------------------------------------------

首先建立表:

SQL> desc lobdemo
名稱????????????????????????????????????? 是否為空? 類型
----------------------------------------- -------- ------------

AA01????????????????????????????????????? NOT NULL VARCHAR2(10)
AA02????????????????????????????????????? NOT NULL BLOB

以下是ctl控制文件得寫法:文件名為ctldemo.ctl

load data
infile 'dump002.dat'
insert
into table "BTGL"."LOBDEMO1"
FIELDS TERMINATED BY '|' TRAILING NULLCOLS??  
("AA01"???????????????????????????? CHAR(3) enclosed by '|',
LOBFILE_COL1?????????????????????? FILLER CHAR???????????????????? ,
"AA02"???????????????????????????? LOBFILE(LOBFILE_COL1) TERMINATED BY EOF NULLIF LOBFILE_COL1 = 'NONE')

然后在DOS下執行:
sqlldr username/password control=ctldemo.ctl

當時要導入得是100多萬條,所以我采用了direct方式
c:\>sqlldr username/password control=ctldemo.ctl direct=y

sqlldr也支持多字符分隔符文件導入。只要類似fields terminated by "|||"這樣就可以了! 其中|||就是分割符

用SQLLDR來裝載CLOB/BLOB列的控制文件例子


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久免费精品国产视频 | 91福利社| 久久国产乱子伦精品免费不卡 | 久久亚洲综合中文字幕 | 香蕉视频在线网站 | 国产不卡视频在线观看 | 久久精品亚洲牛牛影视 | 亚洲狠狠婷婷综合久久久图片 | 免费视频毛片 | h视频日本 | 精品久久久久国产免费 | 99热国产在线观看 | 在线播放五十路乱中文 | 青青草这里只有精品 | 中文字幕日本在线观看 | 特级毛片在线播放 | 精品一区二区三区在线视频观看 | 愉拍精品视频在线观看 | 日日操影院 | 涩涩在线 | 日日拍夜夜嗷嗷叫视频 | 在线观看www成人影院 | 免费观看午夜在线欧差毛片 | 国产一及毛片 | 久热这里只有精品99国产6 | 激情奇米 | 亚洲国产婷婷俺也色综合 | 狠狠色噜噜狠狠狠狠色吗综合 | 性欧美4k高清精品 | 伊人中文在线 | 中文字幕2区| 精品91精品91精品国产片 | 精品国产高清a毛片无毒不卡 | 国产福利视频一区二区三区四区 | 国产―笫一页―浮力影院xyz | 尹人久久久香蕉精品 | av在线色 | 欧美va亚洲va在线观看蝴蝶网 | 欧美激情(一区二区三区) | 99国产福利视频在线观看 | 日韩欧美一区二区三区四区 |