我正在使用Oracle DB。具有多個OUT參數的Java存儲過程批處理
而且我需要按順序調用存儲過程1000次。這個存儲過程有幾個參數和out參數。 目前我正在一次交易中完成。 只需使用java的for-each循環並在其中使用Spring的StoredProcedure。此交易大約需要4秒鐘。這不是很酷。我需要加快這個交易時間。有沒有辦法做到這一點?
在此先感謝
我正在使用Oracle DB。具有多個OUT參數的Java存儲過程批處理
而且我需要按順序調用存儲過程1000次。這個存儲過程有幾個參數和out參數。 目前我正在一次交易中完成。 只需使用java的for-each循環並在其中使用Spring的StoredProcedure。此交易大約需要4秒鐘。這不是很酷。我需要加快這個交易時間。有沒有辦法做到這一點?
在此先感謝
編寫一個封裝存儲過程,調用所有其他過程,將所有數據輸入到封裝過程作爲散列表或類似的東西(請參閱http://docs.oracle.com/cd/B19306_01/java.102/b14355/oraarr.htm#g1072333),將輸出存儲在遊標中並將其返回給Java。從Java調用包裝器。然後,讓數據庫完成所有繁重工作,整個作業運行在一個數據庫tx中。
你可以批了查詢(使用「在」如果是1000點非預見的ID)並返回一個指針,而不是一兩個了,每次則params的?當然,如果你的參數不同,每次通話都不一樣。
是的,我有不同的輸入參數。所以,似乎這個解決方案在我的情況下是不可接受的。 – hades