oracle 11g轉(zhuǎn)成CSV格式數(shù)據(jù)

目的:將oracle HR用戶下的所有表導(dǎo)出成csv格式

從網(wǎng)上搜到一個腳本顶瞳,好用

CREATE OR REPLACE PROCEDURE SQL_TO_CSV(
    P_QUERY IN VARCHAR2, 
    P_DIR IN VARCHAR2,
    P_FILENAME IN VARCHAR2 
)
IS 
L_OUTPUT UTL_FILE.FILE_TYPE;  
L_THECURSOR INTEGER DEFAULT DBMS_SQL.OPEN_CURSOR;  
L_COLUMNVALUE VARCHAR2(4000); 
    L_STATUS INTEGER; 
    L_COLCNT NUMBER := 0; 
    L_SEPARATOR VARCHAR2(1);  
    L_DESCTBL DBMS_SQL.DESC_TAB;  
    P_MAX_LINESIZE NUMBER := 32000;
BEGIN  --OPEN FILE  
    L_OUTPUT := UTL_FILE.FOPEN(P_DIR, P_FILENAME, 'W', P_MAX_LINESIZE);  --DEFINE DATE FORMAT  
    EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_DATE_FORMAT=''YYYY-MM-DD HH24:MI:SS'''; 
    --OPEN CURSOR  
    DBMS_SQL.PARSE(L_THECURSOR, P_QUERY, DBMS_SQL.NATIVE); 
    DBMS_SQL.DESCRIBE_COLUMNS(L_THECURSOR, L_COLCNT, L_DESCTBL); 
    --DUMP TABLE COLUMN NAME  
    FOR I IN 1 ..L_COLCNT 
    LOOP    
    UTL_FILE.PUT(L_OUTPUT,L_SEPARATOR || '"' || L_DESCTBL(I).COL_NAME || '"'); 
        DBMS_SQL.DEFINE_COLUMN(L_THECURSOR, I, L_COLUMNVALUE, 4000);
        L_SEPARATOR := ','; 
        END LOOP; 
        UTL_FILE.NEW_LINE(L_OUTPUT);
        --EXECUTE THE QUERY STATEMENT 
        L_STATUS := DBMS_SQL.EXECUTE(L_THECURSOR);  
        --DUMP TABLE COLUMN VALUE  
        WHILE (DBMS_SQL.FETCH_ROWS(L_THECURSOR) > 0) LOOP    
            L_SEPARATOR := '';   
            FOR I IN 1 ..L_COLCNT LOOP      
                DBMS_SQL.COLUMN_VALUE(L_THECURSOR, I, L_COLUMNVALUE); 
                UTL_FILE.PUT(L_OUTPUT, 
                                 L_SEPARATOR || '"' || 
                                 TRIM(BOTH ' ' FROM REPLACE(L_COLUMNVALUE, '"', '""')
                                 ) || '"');     
                                 L_SEPARATOR := ',';    
                END LOOP;  
                UTL_FILE.NEW_LINE(L_OUTPUT);  
                END LOOP;  --CLOSE CURSOR 
                DBMS_SQL.CLOSE_CURSOR(L_THECURSOR);  
                --CLOSE FILE  
                UTL_FILE.FCLOSE(L_OUTPUT);
            EXCEPTION 
                WHEN OTHERS THEN    
                    RAISE;
END;
/
------  請關(guān)注最后一個“/”

這個腳本需要在你要導(dǎo)出數(shù)據(jù)的那個用戶下執(zhí)行>凉谩c碉!比如我的是HR用戶

在sys 用戶下

---創(chuàng)建導(dǎo)出目錄
SQL> create or replace directory OUT_PATH as '/home/oracle/';---后面的目錄自己定
SQL> GRANT READ ON DIRECTORY OUT_PATH to HR; 
SQL> GRANT write ON DIRECTORY OUT_PATH to HR;

在HR用戶下

 SQL> EXEC sql_to_csv('select * from employees','OUT_PATH','employees.csv');

以上命令均在SQLplus下執(zhí)行的焰络,在PL/SQL下執(zhí)行總是報錯戴甩,并不明白什么原因。

也有更簡單的方法

image.png

以上截圖是我在linux版本下oracle sqldevelop下的截圖闪彼,在要導(dǎo)出表上右擊甜孤,選擇導(dǎo)出,相應(yīng)位置的對號劃掉和選上畏腕,就可以一張表導(dǎo)出CSV缴川。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市描馅,隨后出現(xiàn)的幾起案子把夸,更是在濱河造成了極大的恐慌,老刑警劉巖铭污,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件恋日,死亡現(xiàn)場離奇詭異,居然都是意外死亡嘹狞,警方通過查閱死者的電腦和手機岂膳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來刁绒,“玉大人闷营,你說我怎么就攤上這事烤黍≈校” “怎么了?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵速蕊,是天一觀的道長嫂丙。 經(jīng)常有香客問我,道長规哲,這世上最難降的妖魔是什么跟啤? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮唉锌,結(jié)果婚禮上隅肥,老公的妹妹穿的比我還像新娘。我一直安慰自己袄简,他們只是感情好腥放,可當(dāng)我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著绿语,像睡著了一般秃症。 火紅的嫁衣襯著肌膚如雪候址。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天种柑,我揣著相機與錄音岗仑,去河邊找鬼。 笑死聚请,一個胖子當(dāng)著我的面吹牛荠雕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播驶赏,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼舞虱,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了母市?” 一聲冷哼從身側(cè)響起矾兜,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎患久,沒想到半個月后椅寺,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡蒋失,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年返帕,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片篙挽。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡荆萤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出铣卡,到底是詐尸還是另有隱情链韭,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布煮落,位于F島的核電站敞峭,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏蝉仇。R本人自食惡果不足惜旋讹,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望轿衔。 院中可真熱鬧沉迹,春花似錦、人聲如沸害驹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽裙秋。三九已至琅拌,卻和暖如春缨伊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背进宝。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工刻坊, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人党晋。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓谭胚,卻偏偏與公主長得像,于是被迫代替她去往敵國和親未玻。 傳聞我的和親對象是個殘疾皇子灾而,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,515評論 2 359