新聞中心
本文將為您介紹一個DB2存儲過程使用動態(tài)游標的例子,如果您對動態(tài)游標的使用感興趣的話,不妨一看,對您學習DB2的使用會有所幫助。

創(chuàng)新互聯(lián)公司是專業(yè)的威寧網站建設公司,威寧接單;提供成都網站建設、網站設計,網頁設計,網站設計,建網站,PHP網站建設等專業(yè)做網站服務;采用PHP框架,可快速的進行威寧網站開發(fā)網頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網站,專業(yè)的做網站團隊,希望更多企業(yè)前來合作!
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_wtptest';
--聲明放游標的值
--聲明動態(tài)游標存儲變量
DECLARE stmt1 STATEMENT;
DECLARE c1 CURSOR FOR stmt1;
--聲明出錯處理
DECLARE EXIT HANDLER FOR SQLEXCEPTION #p#
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]單獨測試中,統(tǒng)計條數(shù)';
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存儲過程使用動態(tài)游標的例子
文章URL:http://m.5511xx.com/article/coiegcd.html


咨詢
建站咨詢
