2011-02-28 71 views
0

我們需要幫助將圖像類型的數據從SQL Server 2005遷移到Oracle 10g中的BLOB列。將圖像類型的數據從SQL Server 2005遷移到Oracle 10g中的BLOB列

圖像數據類型的SQL Server 2005列包含從前端附加到系統的文件的數據。文件可能是xls,jpg,txt等。 我們需要將此附件顯示在另一個應用程序的前端,該應用程序使用ORACLE 10g作爲後端。

我們已經嘗試過使用Informatica,但無法查看文件的內容。但它能夠檢測文件的類型(xls,jpg,txt等),但內容是空白的。我們不確定在進行Informatica映射時是否需要使用任何特定選項。

回答

2

首先,BLOB就是這樣。長時間的二進制數據流。沒有元數據詳細說明數據的格式(如果有的話)。

通常,如果BLOB來自文件,則文件名將被記錄在單獨的列中。在許多情況下,文件名的後綴表示數據的性質。一個以「.xls」結尾的文件可能是一個Excel電子表格(但您可以很容易地將一個圖像文件重命名爲以.xls結尾)。音頻和視頻文件比較複雜,因爲後綴可能會給你一個想法,MPG文件可能會在內部使用不同的編解碼器。因此,即使其他人在另一臺機器上玩得很開心,PC也可能會很高興玩一些MPG,但不是其他人。

將文件扔到Web瀏覽器時,會發送一個標題行,如「Content-Type:application/msword」。這向瀏覽器建議應該使用什麼應用程序來打開文件。瀏覽器採用該建議並打開它認爲是最合適的查看器(它可能是PDF閱讀器的Adobe Reader,但用戶及其操作系統/環境設置可能會指向不同的閱讀器,如FoxIt)。

我建議你先將一些文件傳輸到操作系統。也許可以使用BFILE將它們寫入服務器上的OS文件並跨越它們,最好使用原始文件名。然後看看本地/客戶端機器是否可以用適當的應用程序打開文件。

如果可以,那麼數據是乾淨的,問題出在應用程序上。您還應該能夠使用校驗和來確認遷移後的數據與遷移前的數據相同。