2011-09-21 64 views
0

我當前正嘗試將數據從三個舊數據庫模式遷移到一個新數據庫模式。 我一直在使用MS Access的追加查詢功能。使用MS Access在包含blob的Oracle數據庫之間遷移數據時遇到的問題

一切都非常順利,直到我試圖跨越包含Blob的數據。 Oracle返回'ORA-01008:並非所有變量綁定'錯誤。我已經跟蹤到這個blobs中的錯誤,因爲如果我從查詢中刪除這些列,它工作正常。

有誰知道爲什麼發生這種情況或如何克服它?

+0

您可能需要使用'GetChunk'和'AppendChunk',寫代碼是可以用來直接操作二進制數據的函數。但我只是在這裏猜測,因爲我從來沒有做過這樣的事情。您也可以檢查是否有辦法在Oracle中創建視圖,以便將數據轉換爲Access可以處理的格式。 –

+0

我最終忽略了MS Access中的blob,並編寫了一個小型的java程序來複制整個blob。不是最好的解決方案,但它完成了工作。 – AverageMarcus

回答

1

你爲什麼不直接在服務器上做?

沒有測試這個(原諒語法錯誤)

當連接到目標模式

insert into tablename select from SourceSchemaName1.TableName; 
insert into tablename select from SourceSchemaName2.TableName; 
insert into tablename select from SourceSchemaName3.TableName; 

http://psoug.org/reference/insert.html

+0

模式保存在單獨的服務器上。由於我們的安全性,我們需要更多的工作。儘管如果模式可以互相訪問,這將是更好的選擇。 – AverageMarcus