我正在使用 java 访问 mssql 2012 DB
我有一个存储过程“procX”,参数中只有 1 个(比如命名为@p1)并返回一个结果集。除非我在获得结果集之前尝试读取返回值,否则它工作正常。代码如下。如果我删除“//”并获得返回值,我会得到null
结果。
cs = con.prepareCall("{? = call procX(?)}");
cs.registerOutParameter(1, Types.INTEGER);
cs.setInt("p1", 1);
cs.execute();
//cs.getInt(1);
rs = cs.getResultSet();
即使我在获得结果集后读取了返回值,这也会关闭结果集。
有没有办法读取返回值而不导致无法获取结果集?
据我所知,这种情况不受返回值限制,也适用于任何其他输出参数。