2010-04-23 343 views
4

我有一個Oracle表,其列是CLOB數據類型。我想以文本形式閱讀此表的內容。將clob轉換爲varchar2

我試過select dbms_lob.substr(sqltext, 4000, 1) from test但這隻選擇了前4000個字節。如何閱讀整個內容? sqltext列中有超過4000個字符。請指教。

+1

您使用訪問Oracle什麼語言/框架? – 2010-04-23 19:52:35

+0

我正在使用SQLplus。 – Shamik 2010-04-23 20:27:34

回答

3

如果您正在使用另一種Java語言來讀取數據,JDBC驅動程序提供讀取CLob和Blob列的方法。

對於在SQL客戶端上使用直接SQL查詢來讀取這樣的列,它不會使用開箱即用,因爲必須使用流來讀取大於4000字節的clob和blob值。您需要編寫PL/SQL來執行此操作。這裏是一個有用的鏈接,你可以看看

http://www.dba-oracle.com/t_read_blob.htm

+0

謝謝,非常有用的鏈接。 – Shamik 2010-04-23 20:27:11