DB2存储过程开发最佳实践

豆豆网   技术应用频道   2007年09月04日  【字号: 收藏本文

内容摘要:本文以 DB2 开发人员的角度介绍了在 DB2 存储过程开发中需要注意的事项和技巧。新手如果能够按照本文介绍的最佳实践来开发存储过程,可以避免一些常见的错误,从而编写出高效的程序。本文从初始化参数、游标、异常处理、临时表的使用以及如何寻找并 rebind 非法存储过程等常见问题进行了着重讨论,并且给出了示例代码。

  上面的异常处理器会在出现SQLEXCEPTION, SQLWARNING, NOT FOUND异常的时候触发。异常处理器会取出当前的SQLCODE, SQLSTATE,然后根据它们的值来设置输出参数(poGenStatus)的值。

  我们还可以定制一些异常处理器。例如,我们可以定义一些对参数进行初始化的异常处理器。这里,异常处理器可以看作是一个供存储过程自己调用的内部函数。下面是这种情况的一个例子:

  清单8:供存储过程自己调用的内部函数

  -----------------------------------------------------
  -- CONDITION declaration     
  -----------------------------------------------------
  -- (80100~80199) SQLCODE & SQLSTATE
  DECLARE sqlReset CONDITION for sqlstate '80100';
                   
  -----------------------------------------------------
  -- EXCEPTION HANDLER declaration 
  -----------------------------------------------------
  -- Handy Handler         
  DECLARE CONTINUE HANDLER FOR sqlReset
  BEGIN NOT ATOMIC         
   SET hSqlcode  = 0;      
   SET hSqlstate = '00000';   
   SET poGenStatus = 0;      
  END;               
            …………     
  -----------------------------------------------------
  -- Procedure Body        
  -----------------------------------------------------
  SIGNAL sqlreset;
 
  -- insert the record 
             …………

来源:ibm    作者:常伟    责编:豆豆技术应用

正在加载评论...