![](/img/trans.png)
[英]from java how to call a stored procedure passing an oracle cursor as an argument
[英]Call stored procedure passing table type argument
我在HANA數據庫中創建了這個存儲過程,它帶有兩個參數,一個是表類型,另一個是varchar
。
CREATE PROCEDURE UPDATE_GSTR(IN p_Input_Values "GSTR11".p_Input_Values , IN p_TRANS_ID VARCHAR(100))
現在我想用Java調用這個過程,我寫了這樣的東西。
Connection dbConnection = null;
CallableStatement callableStatement = null;
String storedProcedure = "{call UPDATE_GSTR(?,?)}";
dbConnection = jdbc.getDataSource().getConnection();
callableStatement = dbConnection.prepareCall(storedProcedure);
callableStatement.setString(1, "");
callableStatement.setString(2, "");
// execute store procedure
callableStatement.executeUpdate();
有人能告訴我如何在調用此存儲過程時將對象作為參數傳遞給表實體嗎?
無法在SAP HANA外部創建表類型輸入參數。 對於客戶端應用程序,仍然使用表類型參數的一種方法是使用與參數表具有相同結構的臨時表。
然后,您的JAVA應用程序將首先填充臨時表並在第二步中調用該過程
String storedProcedure = "{call UPDATE_GSTR("<temp_table_name>",?)}";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.