多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > Oracle > 快速將excel數據保存到Oracle數據庫中

快速將excel數據保存到Oracle數據庫中

來源:程序員人生   發布時間:2014-02-03 12:25:31 閱讀次數:3498次
我們在工作中,也許會碰到以下情況,客戶或者同事發來需要調查的數據,并不是dmp文件,而是excel文件,此時通常是一張表,少量幾條記錄.最近我恰好碰到了這種情況,所以做了些調查,不敢藏私,拿出來跟大家分享下. 一般的做法,只能對著excel拼寫sql語句.如果列數少還好說,表的列數一多的話,這方法既費時又費力.有什么辦法可以快捷地導入數據呢?以下的方案可以供大家參考:

Sql*Loader

操作步驟如下:

錄入excel測試表格,test.xls。
另存為.csv格式
創建sql*loader控制文件test.ctl,內容如下:
Load data
Infile 'c: est.csv'
insert Into table test Fields terminated by ','(column1,column2,column3,column4,column5)
需要將數據文件拷貝到對應位置
到數據庫中建立對應的測試表test
create table test (
column1 Varchar2(10),
column2 Varchar2(10),
column3 Varchar2(10),
column4 Varchar2(10),
column5 Varchar2(10)
)
執行導入命令
Sqlldr userid = system/manager control='C: est.ctl'

導入成功!
附: Sqlldr的函數關鍵字說明:
Userid --oracle用戶名 userid = username/password
Control --控制文件名稱 control = 'e:insert.ctl'
Log --日志文件名稱 log = 'e:insert.log'
Bad --損壞文件名稱
Data --data file name
Discard --discard file name
Discardmax --number of discards to allow(默認全部)
Skip --導入時跳過的記錄行數(默認0)
Load --導入時導入的記錄行數(默認全部)
Errors --允許錯誤的記錄行數(默認50)

ctl文件內容說明:
Load data
Infile 'e: est.csv' --數據源文件名稱
Append|insert|replace --append在表后追加insert插入空表replace替代原有內容
Into table test --要導入的數據庫表名稱
[when id = id_memo] --過濾條件
Fields terminated by',' --字段分隔符
(id,name,telphone) --字段名稱列表
說明:

這種方法的好處是sql*loader是oracle自帶軟件,無需安裝額外的軟件.缺點是操作比較麻煩點,而且如果表列數很多的話,輸入字段名稱列表會比較麻煩,適合導入大量數據.

PL Sql Developer 方法一

打開excel給需要拷貝的數據增加一個空的起始列 , 選中所要更新的數據,ctr+c
打開PL SQl Developer
輸入select * from tab_name for update,按F8運行
打開鎖,此時記錄集處于可以編輯的狀態,
點擊選中整行, ctrl+v,commit,大功告成:

說明:這種方法其實是利用PL/SQL developer 對于記錄集可以進行整行和多行復制粘貼的特性,toad似乎沒有這樣快速的辦法;

在excel表格的列新追加空列的原因是在PL/SQL Developer選中整行進行粘貼時,前面會有個列數的列,所以要新增加一列,否則會造成列的錯位.
這種方法處理少量數據的時候最合適,快捷方便,但是: excel的列必須與表中的列完全匹配

PL Sql Developer 方法二

使用PL SQL Developerd的text importer,這種方法簡單方便,推薦此種方法

方法很簡單:

點擊tools->text importer
在Data from txtfile 頁面選擇要導入的文件,在Data to Oracle 界面選擇要導入的庫和表即可
此時可以看到導入結果預覽,還可以查看生成的sql語句,并且對于列可以智能匹配,妙用多多.當然點擊Import 就OK了

說明:

這種方法簡單可靠,適合導入大量的數據,我猜測這個工具其實是后臺根據excel的列生成了相應的sql語句,取代人工拼寫sql語句的過程,呵呵,就算生成的sql語句因為一些原因,不是很正確,也可以手工修改.這樣既自動又可以手動加以控制,我比較推薦這種方法.

前提是要安裝PL/Sql Developer,呵呵

綜述:

我這篇文章主要介紹了兩種工具用于將excel導入oracle,如果在客戶的服務器上等環境受限的情況,沒有PL/Sql Developer的話,使用Sql*Loader是個不錯的選擇;PL/SQL Developer的兩種使用方法可以靈活使用,前者快速方便,后者可控性更好,而且無需字段匹配.

轉自:http://www.cnblogs.com/liangminzhong/archive/2010/05/18/1738693.html

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 手机看片福利日韩国产 | 亚洲人成777在线播放 | 欧美精品一区二区在线观看 | 亚州va| 女人一级毛片免费观看 | 欧美日韩成人高清在线播放 | 亚洲人成伊人成综合网久久 | 久久久久久国产精品视频 | 欧美一级乱妇老太婆特黄 | 精品无码中出一区二区 | 国内外精品免费视频 | 国产老肥熟xxxx | 国产精品福利网站 | 亚洲毛片免费视频 | 亚洲成a人片在线v观看 | 日韩久久综合 | 国产98在线 | 成年人视频网站免费 | 手机看片精品高清国产日韩 | 在线观看免费a∨网站 | 欧美亚洲综合网 | 欧美13一14sexvideo欧 | 国产三区二区 | 国产欧美日韩一区二区三区视频 | 日本高清网 | 精品一区二区三区在线观看 | 国产片在线观看 | 欧美性videosex18 | 日本欧美在线 | 免费爱爱网址 | 日韩中文字幕精品免费一区 | 亚洲福利一区福利三区 | 久久久毛片免费全部播放 | 又污又黄又无遮挡的网站国产 | 久久在线免费 | 免费簧网站永久在线播放国产 | 国产精品欧美视频另类专区 | 欧美一级高清视频在线播放 | 最新欧美18videosex性欧美 | 国产高清av在线播放 | 日本不卡一二三 |