如何一次同時匯入多筆資料到Oracle的資料庫裡面?
我想要一次把很多的資料存入到Oracle的資料庫裡
請問各位大大有什麼方法?
mysql可以用load~把 .txt 的資料一次匯入到資料庫裡
請問~oracle有沒有類似的指令可以一次存多筆資料到oracle的 table裡面
我想把excel裡的資料匯入進去~
如果不能直接用excel~那順便跟我說~要用哪一種的檔案類型~
才可以匯入oracle的table裡
oralce 有很多方法可以 load 資料進去. 最懶得方法應該是用 external table. (資料實際上並沒有 load 進 oracle, 但是可以把她當作 table 來使) 正統方法是使用 sqlldr (sql loader 與 sql server 上的 bulk load 很像, 但須要打很多字...)
如果需要大量的(資料)馬殺雞, 又不想打字的時候, 可以求助於 Sql server 的 SSIS.
那個網站真複雜...
翻譯成中文還是不懂在幹嘛= =
這樣才能讓老闆驚艷呀(笑)
使用 sqlldr 的話除了要打字, 還要求助於水晶球來預言一番. (因為 default error 數是 50, 超過的話 sqlldr 就罷工了) 如須 Tune loader 的參數, 不如去咖啡店喝咖啡順便保養眼睛.
external table 是懶人的好幫手, 只要資料庫能讀內容, 要殺要剮任君宰割. 範例在此:
http://www.dba-oracle.com/art_ext_tabs_spreadsheet.htm
(基本上檔案 200MB, 2~3百萬行內用 external table 不會有什麼 performance 的問題, 超過的話還是乖乖的用 sqlldr 吧)
先考慮用一次還是常常要用呢?
可以試試用 sql loader..他可以定義文字檔的格式
例如用長度切欄位或用自己定義的隔符號 ,
可以查查所用 oracle 版本的 sql loader 文件
如果資料真是爆量..注意一下的筆數 rows=1000 之類的
Excel檔案抛轉Oracle有兩個方法:
通常都是會轉成 XML 然後不管是匯進哪一種資料庫,都有現成的作法。
shunyuan提到:
轉成 XML
但是還是要在資料庫中寫個讀取XML的規則, 否則不知要如何把XML欄位和資料表欄位對應..
我說的對不對呢?
shunyuan提到:
獎品親一下
完全狀況外, SY大提示一下這個是什麼??
simon581923提到:
完全狀況外, SY大提示一下這個是什麼??
本週女王嘴賤主題
.....喔喔.. 我最不想看到的 xml 終於出現了. S 大果真神人, 一出手便知有沒有.
我對於 XML 有很大的心理障礙, 除了要打很多字, 寫程式的不合作, 我這邊也很頭大. (那些該死自己定義的 XSD, 定義沒關係, 但好歹 XSD 給個版本. 不然天曉得 XSD 是啥時用的) ㄧ開始 okay, 然後改 XSD 後就開始無限嘴砲回圈.... <- 還要加上我浪費的時間在 debug 那該死的 xml 上.
我用過最滿意的作業系統是 AIX, 因為沒啥人用, 而且用的都是懶(老)人. 有時候我覺得小圈子真的比較好溝通. XML 真的只是拿練 EQ 的.
pojen提到:
....喔喔.. 我最不想看到的 xml 終於出現了. S 大果真神人, 一出手便知有沒有.
神人不敢當,雕蟲小技喔。
你有試過用 Excel 輸出成 XML data 嗎?應該還好吧,可以完全不管 XSD,只給個 XML template 定欄位,就可以了。
我們遊戲都是讓企劃用 Excel 輸入資料,輸出成 XML,後面資料不管要進資料庫,或是要進遊戲程式,沒有去管過 XSD
另外,Validate XML,UltraEdit 或是用 IE 一打開,就會出現錯在哪一行(前提,你的電腦有裝 Visual Studio)
XML 應該不算是高深的技術,比 HTML 簡單,就是拿來放結構化的資料。
還是我搞錯了?
使用PLSQL Developer工具,有一個非常簡單的方法~
在 SQL Windows 中下SQL指令:
select a.*, rowid from yourtablename a;
接著就直接把EXCEL你要匯入的資料列用COPY就可以直接貼上嘍~