1
A
回答
1
我們有需要插入XML文件(如斑點),因此,有腳本插入/更新,並以兩種方式操縱在我們的Oracle遷飛腳本斑點:
一個:通過存儲過程遷移(也就是Flyway *.sql
文件中的PL-SQL,而不是普通的SQL)。我們使用Oracle的utl_raw.cast_to_raw()
函數。
declare
p_surveyBlob raw(10000);
begin
p_surveyBlob := utl_raw.cast_to_raw('<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<Survey>
<UserOnSite="yes">
<Role>cooper</Role>
. . . and so on...
</Survey>');
Insert into SURVEY (FILE_SIZE,FILE_DATA. . . .)
values (dbms_lob.getlength(p_surveyBlob),p_surveyBlob. . . .);
COMMIT;
end;
這種方法需要BLOB數據是PL-SQL文件的一部分,並且硬編碼這是罰款,對我們的需求..它是測試數據!
注意:我們還以這種方式插入二進制文件(pdfs & images)。好的,所以我們必須事先手動準備數據(通過Cygwin的base64編碼器實用程序運行該文件以將其轉換爲base64字符串)。該字符串,然後用2個Oracle函數用法如下:
utl_encode.base64_decode(utl_raw.cast_to_raw('the base64 string returned by cygwins base64 function'))
兩個:通過Java遷移。 我們從這篇文章How to write/update Oracle blob in a reliable way?瞭解了很多,並且也以這種方式插入/更新測試&開發數據。
注意:我們的構建副本,我們需要到類路徑,然後我們訪問它們的資源流中的所有測試文件,這有助於詹金斯持續構建,並且不會做出關於文件的任何基於位置的假設。
相關問題
- 1. 如何使用關係插入數據?
- 2. 如何使用EntityFramework插入數據?
- 3. 如何使用遞歸插入數據?
- 4. 如何在Maven Flyway插件中將數據庫遷移爲SYSDBA?
- 5. 使用Ajax插入數據
- 6. 插入數據使用SqlDataAdapter
- 7. 使用Linq插入數據
- 8. 使用nhibernate插入數據
- 9. 使用Node.js插入數據
- 10. 使用mysql插入數據
- 11. Laravel5.4 - 如何使用POST方法將數據插入數據庫
- 12. 如何使用sqlite數據庫插入數據?
- 13. 如何使用複選框在數據庫中插入數據?
- 14. 如何使用java在數據庫中插入數據?
- 15. 如何使用數據集將數據插入表中?
- 16. 如何使用EditText將數據插入數據庫?
- 17. 如何使用spring + hibernate將數據插入數據庫?
- 18. 如何使用php在數據庫中插入數據
- 19. 如何使用模態將數據庫插入數據庫中
- 20. 如何使用JPA查詢插入數據到數據庫?
- 21. 如何使用opencart將數據插入數據庫?
- 22. 如何使用entitymanger在我的數據庫中插入數據?
- 23. 如何在C#中使用mysql數據庫插入數據
- 24. 如何使用循環插入數據到Sqlite數據庫?
- 25. 如何使用Asp.net將數據插入到MySQL數據庫
- 26. 如何使用phpexcel讀取數據並插入數據庫?
- 27. 如何插入使用核心數據的數據在IBAction爲
- 28. 如何使用HTML控件將數據插入數據庫?
- 29. 我如何插入數據到數據庫使用JSON PHP mysqli?
- 30. 如何使用c#將數據插入Sqlite數據庫#