2011-10-13 72 views
0

我們可以通過索引而不是按名稱將輸出和輸入參數傳遞給SQLParameter嗎?Spring StoredProcedure

/* This code snippet explains data access thru CallableStatement by registering the output and input params by index. */ 

    Connection conn = getConnection(); 
    CallableStatement sp = conn.prepareCall("pkg_name.proc_name"); 
    sp.registerOutParameter(1, oracle.jdbc.driver.OracleTypes.CURSOR); 
    sp.registerOutParameter(2, oracle.jdbc.driver.OracleTypes.NUMBER); 
    ResultSet rs = (ResultSet) sp.getObject(2); 

這裏resultset可以根據索引獲取。

請建議。

回答

0

是的,我們可以。 Java API doc是你的朋友。

public void registerOutParameter(String parameterName, 
         int sqlType) 
         throws SQLException; 
+0

對不起,我錯過了這裏的東西。 –

+0

對不起,我錯過了這裏的東西。我正在嘗試使用spring API - StoredProcedure。在使用這個時,我們必須通過typeName傳入輸出和輸入參數。有沒有一種方法可以傳遞paramIndex,而不是通過名稱進行強綁定。 –

+0

私有類MyStoredProcedure擴展StoredProcedure {0} {0} {0}私有靜態最終字符串SQL =「sysdate」; public MyStoredProcedure(DataSource ds)setDataSource(ds); setFunction(true); setSql(SQL); declareParameter(new SqlOutParameter(「date」,Types.DATE)); compile(); } public Map執行(){ //'sysdate'sproc沒有輸入參數,所以提供了一個空的Map ... return execute(new HashMap()); } } –

相關問題