我有一个存储过程
CREATE OR REPLACE FUNCTION fun_retrieve_vector_receipt_payment_details(character varying, integer, character varying, character varying, character varying, refcursor) RETURNS refcursor AS
这是我的java代码
con.setAutoCommit(false);
String sql = "{call fun_retrieve_vector_receipt_payment_details(?,?,?,?,?,?)}";
callableStatement = con.prepareCall(sql);
callableStatement.setString(1, "PAYMENT");
callableStatement.setInt(2, 41);
callableStatement.setString(3, "2011-05-06");
callableStatement.setString(4, "2013-05-06");
callableStatement.setString(5, "Y");
callableStatement.setObject(6, rs);
callableStatement.registerOutParameter(6, Types.OTHER);
callableStatement.execute();
ResultSet resultSet = (ResultSet) callableStatement.getObject(6);
// rs = callableStatement.executeQuery();
boolean next = resultSet.next();
if (next)
{
System.out.println(resultSet.getString(1));
}
为什么我的结果集为空?
我应该将什么作为 refcursor 作为来自 java 的参数传递?
我正在使用 postgres 作为我的数据库