db2 获取返回的游标_DB2数据库对动态游标的使用

本文将为您介绍在DB2数据库中程,对动态游标的正确使用方法,如果您对DB2存储过程中对动态游标的使用感兴趣的话,不妨一看,以下就是文章的主要内容的详细描述。

CREATE PROCEDURE data_wtptest( IN in_taskid_timestamp varchar(30),

OUT o_err_no int,  OUT o_err_msg varchar(1024))

LANGUAGE SQL  P1: BEGIN ATOMIC

声明开始

临时变量出错变量

DECLARE SQLCODE integer default 0;

DECLARE SQLStmt varchar(1024) default '';

DECLARE r_code integer default 0;

DECLARE state varchar(1024) default 'AAA';

记录程序当前所作工作

DECLARE at_end int DEFAULT 0;

DECLARE t_destnetid int default 0;

DECLARE t_recvid varchar(30) default '';

DECLARE SP_Name varchar(50) default 'data_integrate';

声明DB2存储过程中放游标的值

声明动态游标存储变量

DECLARE stmt1 STATEMENT;

DECLARE c1 CURSOR FOR stmt1;

声明出错处理

DECLARE EXIT HANDLER FOR SQLEXCEPTION  begin  set r_code=SQLCODE;

set o_err_no=1;

set o_err_msg='处理['||state||']出错 ,'||'错误代码SQLCODE:['||CHAR(r_code) || '].';

insert into fcc_sp_log(object,name,value) values(SP_Name,in_taskid_timestamp,o_err_msg);

end;

DECLARE continue HANDLER for not found  begin  set at_end = 1;

set state='找到0行记录或已经到记录结尾.';

end;

声明结束

SET state='[add]单独测试中中,统计条数';

SET SQLStmt='SELECT count(*) FROM wtp_pre_download

where task_timestamp = ?';

PREPARE stmt1 FROM SQLStmt;

OPEN c1 USING in_taskid_timestamp;

FETCH c1 INTO t_destnetid;

CLOSE c1;

SET state='[add]查具体信息';

SET at_end = 0;

SET SQLStmt='SELECT recv_userid FROM wtp_pre_download

where task_timestamp = ?';

PREPARE c1 FROM SQLStmt;

OPEN c1 USING in_taskid_timestamp;

SET state='[add]************';

FETCH c1 INTO t_recvid;

SET state='[add]============';

insert into fcc_sp_log(object,name,value)

values(SP_Name,in_taskid_timestamp,t_recvid);

END p1

以上的相关内容就是对DB2存储过程中使用动态游标的介绍.

【责任编辑:段燃 TEL:(010)68476606】

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值