Sqluldr是什么:是一個oracle數據導出小工具。
Sqluldr作用介紹:Sqluldr可以快速導出oracle數據庫中的數據。該小工具可以將數據庫中的數據,導出多種不同的格式(如.txt、.csv等等,可按需選擇)。
Sqluldr的使用背景:鑒於項目組經常會有遇到需要將數據庫中的數據導出到excel中的情況,但是,PL/SQL Developer下,導出.csv格式的文件(這里指的就是將數據庫中的數據導出,格式為excel的格式)的功能,在遇到大數據量的情況(如幾十萬,上百萬),導出數據所花費的時間較長。而使用Sqluldr,導數速度大大提升,測試結果:每分鍾約可以導出1G的數據。
配置工具包:
那么,該如何在windows系統下配置Sqluldr這個小工具呢?
詳情如下:
1、先將下載好的程序包解壓:
1、將1中藍色圈圈中的文件copy到$ORACLE_HOME的bin目錄中:
如何查找“$ORACLE_HOME的bin目錄”,有個快捷的方法,直接到PL/SQL Developer-->Tools-->Preferences
直接將1中藍色圈圈中的文件copy到以上紅色線的bin目錄中:
到這里,配置結束。(配置過程簡單)
正式使用sqluldr:
配置好了,接下來,就直接使用,那么該如何使用呢?
詳情如下:
1、打開cmd,輸入sqluldr2.exe,若出現以下界面,則上述的配置過程,成功。
2、接下來,直接輸入導出數據的命令即可:
sqluldr2.exe USER=dim/Hqyg_dw@oracle66 QUERY="select /*+ parallel(2) */ * from dim.dim_stocks" table=dim_stocks head=yes FILE=D:\sqluldr\test.csv
Cmd運行結果:
導出成功。
下面為一些小細節的補充介紹:
細節補充:
1、導出語句小剖析:導出語句比較簡單,一般可以自己猜測出其中的意思,若不清楚,可以直接使用命令sqluldr2.exe,會有相關參數的介紹。
--(sqluldr2.exe USER=dim/Hqyg_dw@oracle66 QUERY="select /*+ parallel(2) */ * from dim.dim_stocks" table=dim_stocks head=yes FILE=D:\sqluldr\test.csv )
2、導出語句中,“table=dim_stocks”該部分可以省略。
--(sqluldr2.exe USER=dim/Hqyg_dw@oracle66 QUERY="select /*+ parallel(2) */ * from dim.dim_stocks" table=dim_stocks head=yes FILE=D:\sqluldr\test.csv )
3、由於cmd不識別換行的語句,所以,導出語句不要有換行情況。
4、sql的查詢語句過長時,可以先將sql語句寫到.txt的文件,然后再在導出語句中引用,詳細如下:
sqluldr2.exe USER=dim/Hqyg_dw@oracle66 SQL=D:\sqluldr\ss.txt head=yes FILE=D:\sqluldr\test.csv (標紅處為修改的地方)。
截圖為寫好的.txt的文件
sqluldr2.exe USER=fintest/asdfasdf@finace_db SQL=F:\test.txt head=yes FILE=F:\sqluldr\test.csv
參考來源:http://blog.itpub.net/26770925/viewspace-1379914/