2009-05-22 163 views
1

我有一個oracle表,其中一列是原始類型。我知道我們不能使用sql來從該列中獲取數據。查詢長的原始數據類型

任何人都可以告訴我如何從該列中獲取所有數據嗎?

在此先感謝

+0

真正的問題是......什麼是在列中,你想用它做什麼? – 2009-05-23 08:39:44

回答

2

你試過PL/SQL嗎?

declare 
    a mytable.rawcol%TYPE; 
begin 
    select rawcol into a from mytable; 
    -- now do something with "a" 
end; 
/
1

您可以總是使用SQL來獲取數據。實際上,它是將數據導入或導出數據庫的唯一方法。 問題是數據出現的格式以及您使用的格式。某些SQL客戶端可能無法很好地處理二進制數據。有些會將其顯示爲十六進制流(這可能不是很有意義)。

您可以使用PL/SQL和UTL_FILE將二進制數據寫入服務器上的文件。或者查看UTL_RAW軟件包。

0

您可以使用perl DBD :: Oracle來查詢該表並寫入數據。你可以使用任何你喜歡的程序語言和一個oracle客戶端/ api來將數據拉出並寫入文件。您還可以使用oracle工具(如oracle exp/imp)將數據從db移動到db。既然你還沒有規定你想要用很長的原始數據做什麼,它很難幫助你進一步。