2015-07-20 60 views
2

是否可以使用不同數據庫中的軟件包創建軟件包或替換本地數據庫中的現有軟件包,而無需從遠程數據庫中導出?使用不同遠程數據庫上的軟件包創建oracle pl/sql軟件包

基本上我有兩個環境/服務器(DEV和QA)。

工作在軟件包上的開發人員使用開發環境,我想使用DEV中的軟件包更新QA環境中的相同軟件包(忽略所有可能的問題,例如編譯失敗等)。

是否有可能經常使用Dev中的包作爲源(而不是從.sql文件編譯)在QA中更新包?也許是數據庫鏈接?

+0

您是否打算在部署到生產時使用類似的過程(即從QA複製到PROD)?如果不是,您如何知道您的PROD將具有您在QA中驗證過的相同代碼? – user272735

+0

是的,但唯一的區別是從QA到Prod手動導出程序(現在)。 – ziggy

回答

5

是的,有可能您可以在目標系統上創建一個進程,它使用遠程系統上的DBMS_METADATA包爲所需的包規範和正文提取DDL,然後在本地系統上使用動態SQL來編譯獲取代碼。

或者,您可以使用諸如Oracle的SQL Developer等工具來遷移代碼。使用數據庫比較功能來檢測差異並準備適當的DDL腳本,或使用購物車功能選擇要遷移的內容。但是,我不確定SQL Developer方法可以自動執行。

相關問題