2012-10-15 49 views
0

我正在使用SQL PL開發DB2中的應用程序,並且正在模塊中定義例程(過程和函數)。替換在DB2模塊中聲明的例程

但是,每次更改例程時,我都無法替換它,因此我必須刪除模塊主體並重新創建。

有什麼辦法可以爲模塊內的例程做REPLACE嗎?

+0

所以'CREATE OR REPLACE PROCEDURE ...'在模塊中不起作用? – dan1111

+0

不,它不起作用,因爲命令是ALTER MODULE XXX ADD PROCEDURE YYYY。我正在尋找類似於ALTER MODULE XXX REPLACE PROCEDURE YYYY的東西,但它不存在。 – AngocA

回答

0

爲了替換模塊中的例程(存儲過程或函數),不必刪除主體並重新創建所有對象。

爲了取代常規,也可以刪除特定的過程/函數,只是重新創建:

ALTER MODULE m1 ADD PROCEDURE p1() 
BEGIN 
    ... 
[email protected] 
ALTER MODULE m1 DROP PROCEDURE [email protected] 
ALTER MODULE m1 ADD PROCEDURE p1() 
BEGIN 
    ... 
[email protected] 

但是,沒有一個真正的替換操作。