JAVA 调用DB2存储过程获取结果集 50

java调用DB2存储过程获取结果集,是不是在创建存储过程的时候,一定要加RESULTSETS这一句,如果不加,是不是无法获取到结果集?如果可以不用加RESULTSETS... java调用DB2存储过程获取结果集,是不是在创建存储过程的时候,一定要加RESULT SETS 这一句,如果不加,是不是无法获取到结果集?如果可以不用加RESULT SETS,怎样获取到?C#可以不加RESULT SETS获取到结果集?
CREATE PROCEDURE TJ_CX()
LANGUAGE SQL
P1:BEGIN
DECARE CUR0 CURSOR WITH HOLD WITH RETURN TO CLIENT FOR
SELECT * FROM BASE_CONFIG;
OPEN CUR0;
END P1;

CallableStatement cs = conn.prepareCall("call TJ_CX()");
ResultSet rs = cs.getResultSet();
如果在创建TJ_CX的时候不加RESULT SETS 1,rs为null;

在线等答案啊,求大神指点。
展开
 我来答
尐木头君
2014-09-03 · TA获得超过105个赞
知道答主
回答量:41
采纳率:0%
帮助的人:31.3万
展开全部
创建procedure跟rs有什么关系,你的调用proceduer只是因为你的过程是查询,所以用一个rs来把结果用一个结果集封装起来方便对查询出来的数据进行操作。
你的这句“如果在创建TJ_CX的时候不加RESULT SETS 1,rs为null;”是想表达个啥?
更多追问追答
追问
我的意思是 DB2里 像上面这样创建的PROCEDURE,ResultSet rs =cs.getResultSet();这样获取的rs未null;
但如果--》CREATE PROCEDURE TJ_CX()
LANGUAGE SQL
RESULT SETS 1
P1:BEGIN
。。。;
END P1;
ResultSet rs = cs.getResultSet(); 这样可以获取到结果集
追答
DYNAMIC RESULT SETS integer
Indicates the estimated upper bound of returned result sets for the stored
procedure. Refer to "Returning Result Sets from Stored
Procedures" in the SQL Reference for more information.
The value RESULT SETS may be used as a synonym for DYNAMIC RESULT SETS for
backwards and family compatibility.
看下API就知道了
如果你都不指定存储过程返回结果集,你在下面怎么能获取到结果集呢。你说呢?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式