oracle匯出blob,clob出錯的問題

來源:互聯網
上載者:User

標籤:

2.3 如何解決匯出clob和blob類型資料報錯的問題

當表欄位中含有clob和blob類型資料時,使用PL/SQL Developer匯出會報stream read error的錯誤,匯出操作終止,說明PL/SQL Developer方式匯出不支援這種類型,oracle export方式可以支援這種類型。 由於需要匯出的表很多,PL/SQL在匯出前都要對需要匯出的表進行分析,通常都會花費十幾分鐘的時間,然而由於某張表存在clob和blob類型資料時就會異常終止,那之前的操作時間就會浪費,為了匯出所有表需要將匯出的表進行標記,只匯出沒有clob和blob類型資料的表。我們通常的做法是在匯出表的時候用ctrl或者shift按鍵進行手工選擇,通過匯出的日誌記錄不能匯出的表,然後手工將這些表反選出待匯出的表。但是這樣操作費時費力,需要通過不停反覆的操作,才能知道哪些表不能匯出。 下面介紹一下如何使用oracle系統檢視表all_tab_columns和PL/SQL在匯出表的時候提供的Object selection功能快速匯出不包含clob和blob的表資料。

1、使用下面的sql語句拼出Object selection的檔案內容。

 --不包含clob和blob的表 select distinct(‘TABLE "‘||a.OWNER ||‘"."‘||a.TABLE_NAME||‘"‘) from sys.all_tab_columns a where  a.OWNER = ‘ICDPUB‘ and a.TABLE_NAME not in (select t.TABLE_NAME from sys.all_tab_columns t where t.OWNER = ‘ICDPUB‘ and t.DATA_TYPE in (‘CLOB‘,‘BLOB‘)) 

注意:上面的sql語句裡的ICDPUB是使用者名稱

2、按照上面的語句的執行結果產生Object selection的檔案(尾碼是.osf),檔案的內容如下:   

PL/SQL Developer Object Selection File 1

TABLE "ICDPUB"."ACTIVE_ALARMS"

TABLE "ICDPUB"."ALLAPPOINT"

TABLE "ICDPUB"."ALLOPTIONVIEW"

TABLE "ICDPUB"."ALLOTCONFIG"

TABLE "ICDPUB"."ALLPAPERAUTHVIEW"

TABLE "ICDPUB"."ALLPAPERVIEW"

TABLE "ICDPUB"."ALLQUESTIONVIEW"

3、在匯出表功能的表選擇框裡單擊右鍵選擇“Load Object selection”,選擇上一步製作的檔案,完成表的選擇。

4、選擇合適的參數,進行匯出操作。

5、用oracle export方式匯出包含clob和blob的資料。

oracle匯出blob,clob出錯的問題

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.