成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術文章
文章詳情頁

Oracle如何編寫一個sqlldr實例

瀏覽:137日期:2023-09-12 20:47:51
目錄準備工作具體步驟1、整理要導入數據,去除列名另存為csv文件2、在Oracle上創建存放數據的Table3、創建ctl文件1.在sqlldr里創建一個新的文本文件2.編輯信息如下3.將文本文件另存為 sn_orderitem_20210412.ctl4、編寫Windows批處理文件1.在sqlldr里創建一個新的文本文件2.編輯信息如下5、雙擊運行Windows批處理文件6、查詢結果準備工作

首先在D盤創建文件夾,命名為sqlldr

具體步驟1、整理要導入數據,去除列名另存為csv文件

特別注意:csv文件是純文本文件,一般以逗號分隔,如果導入的數據中存在逗號,可以給表格中的數據加上雙引號將數據括起來。

數據內容:

sn_orderitem_20210412

idorder_iditem_iditem_namepriceitem_numAB001A0011001A0.151AB002A0011002B201AB003A0011003C402AB004A0051001A0.151AB005A0051004D2006AB0015A0151005E40.51AB0016A0191006F501AB0017A0191007G24.52AB0018A0201008H10.31AB0001A,B

結果:

給表格數據加上引號:!"@!"

標將數據另存為CSV UTF-8(Comma delimited)格式,存入sqlldr文件夾

2、在Oracle上創建存放數據的Tablecreate table sn_orderitem_20210412(idvarchar(20), order_id varchar(20), item_id varchar(20), item_name varchar(20),price number,item_num number);3、創建ctl文件1.在sqlldr里創建一個新的文本文件2.編輯信息如下load datacharacterset UTF8infile 'D:\sqlldr\sn_orderitem_20210412.csv'append into table sn.sn_orderitem_20210412fields terminated by ','trailing nullcols(id OPTIONALLY ENCLOSED BY ''',order_id OPTIONALLY ENCLOSED BY ''',item_id OPTIONALLY ENCLOSED BY ''',item_name OPTIONALLY ENCLOSED BY ''',price OPTIONALLY ENCLOSED BY ''',item_num OPTIONALLY ENCLOSED BY ''' )3.將文本文件另存為 sn_orderitem_20210412.ctl

解析:

load data --控制文件標識characterset UTF8 --設置編碼格式,防止中文亂碼

infile 'XXX.csv' --即將導入的csv文件及路徑append into table XXX --Oracle上創建的表,在原表進行追加數據fields terminated by ','--以逗號分隔 (分隔方式可以是空格,制表符X'09'……)trailing nullcols --允許某地為空值,保證缺少部分字段時,整個表格不錯位(XX optionally enclosed by '"' --每個字段都是用“”包圍(當文本里的字符和分隔符有沖突是可以使用)…… )

拓展:

導入數據共有四種方式:

insert:為缺省方式,在數據裝載開始時要求表為空;append:在表中追加新記錄;replace:刪除舊記錄,替換成新裝載的記錄;truncate:刪除舊記錄(用 truncate table 語句),替換成新裝載的記錄。4、編寫Windows批處理文件1.在sqlldr里創建一個新的文本文件2.編輯信息如下D:\app\isadmin\product\11.2.0\dbhome_1\BIN\SQLLDR.EXE userid=test/test@local11g control=D:\sqlldr\sn_orderitem_20210412.ctl log=D:\sqlldr\sn_orderitem_20210412.log bad=D:\sqlldr\sn_orderitem_20210412.bad SILENT=(HEADER,FEEDBACK) errors=0

3.將文本文件另存為 sn_orderitem_20210412.bat

解析:

D:\app\isadmin\product\11.2.0\dbhome_1\bin\sqlldr.exe --sqlldr工具調用

userid=test/test@local11g --用戶名/密碼@庫名

control=D:\sqlldr\sn_orderitem_20210412.ctl--控制文件絕對路徑

log=D:\sqlldr\sn_orderitem_20210412.log --指定日志文件路徑

bad=D:\sqlldr\sn_orderitem_20210412.bad --指定錯誤文件路徑

silent=(header,feedback) --隱藏數據載入過程中的提示信息

errors=0 --允許錯誤行數為0

5、雙擊運行Windows批處理文件6、查詢結果

導入Oracle里的數據會帶上雙引號,回去看了一下csv文件發現,從excel里加引號后導出csv文件后,雙引號會變為三引號,故造成此結果,我的方法直接在txt文件中將三引號替換為雙引號后再導入,如果有其它方法的小伙伴可以評論區交流~當然如果你的數據里沒有出現逗號,可以不需要用引號來分隔,因此也不會出現這樣的問題啦除了轉化為csv,也可以用txt文件進行導入,只需要將excel轉化為以制表符分隔的txt文本就可以了創建.bat Windows批處理文件的便利之處是可以重復使用,只需修改控制文件中需要變動的參數后再次運行就可以了,也可以進行批量導入

到此這篇關于Oracle如何編寫一個sqlldr實例的文章就介紹到這了,更多相關Oracle編寫sqlldr內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Oracle 數據庫
主站蜘蛛池模板: 亚洲 欧美 精品专区 极品 | 国产精品久久国产三级国不卡顿 | 久久精品国产精品亚洲20 | 韩毛片| 中国女警察一级毛片视频 | 性欧美videofree中文字幕 | 欧美日一本 | 久久精品夜色国产 | 欧美午夜不卡 | 国产成人一区二区在线不卡 | 新版天堂资源中文在线 | 国产成人亚洲精品91专区高清 | 嫩草一区二区三区四区乱码 | 久久久久久久久久久久久久久久久 | 亚洲欧美94色 | 日本三级一区二区三区 | 亚洲成a人片在线观看中 | 亚洲在线网站 | 手机成人看片 | 欧美一区二区三区在线播放 | 欧美真人视频一级毛片 | 欧美日韩在线观看视频 | 色丁香久久 | 久久成人视| a免费网站 | 欧美性色黄大片www 欧美性色黄大片一级毛片视频 | 国产日韩欧美在线观看播放 | 日日摸日日碰夜夜爽久久 | 成人国产精品免费视频 | 中日韩美中文字幕 | 亚洲精品一区二区三区 | 欧美日韩亚洲视频 | 成人a毛片久久免费播放 | 国产高清免费在线 | 韩国一级特黄毛片大 | 久草视频精品 | 一区不卡在线观看 | 久草在线资源视频 | 免费欧美在线视频 | 久久国产精品夜色 | 美女一级毛片视频 |