改述我的问题: 当存储过程没有返回结果集(通过打开游标)但只返回状态代码时,org.springframework.jdbc.object.StoredProcedure的execute方法是否会提供返回代码?
答案 0 :(得分:0)
查看GET DIAGNOSTICS语句(DB2_RETURN_STATUS):http://pic.dhe.ibm.com/infocenter/db2luw/v10r5/topic/com.ibm.db2.luw.sql.ref.doc/doc/r0005647.html
使用它有一些限制,因此您可能无法从Java执行它。最好的方法是为存储过程创建一个包装器。
CREATE PROCEDURE P1 ()
BEGIN
RETURN -1;
END @
CREATE PROCEDURE WRAPPER_P1(OUT RETURN_CODE INTEGER)
BEGIN
CALL PROCEDURE P1();
GET DIAGNOSTIC RETURN_CODE = DB2_RETURN_STATUS;
END @
然后只要求输出值。
但是,您应该检查Spring Framework文档以获取从sqlca中提取此信息的任何内容。或者在DB2 Java驱动程序文档中。