【问题标题】:Retrieve only the execution status of the StoredProcedure (Spring)仅检索 StoredProcedure (Spring) 的执行状态
【发布时间】:2014-04-30 23:52:53
【问题描述】:

改写我的问题: 当存储过程不返回结果集(通过打开的游标)而只返回状态码时,org.springframework.jdbc.object.StoredProcedure 的 execute 方法有没有办法提供返回码?

【问题讨论】:

    标签: spring stored-procedures db2 resultset


    【解决方案1】:

    看看 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.xml 中提取此信息的任何内容。或者在 DB2 Java 驱动程序文档中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-28
      • 2021-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-17
      • 2011-01-12
      相关资源
      最近更新 更多