如何使用db2中的游标获取多行 [英] How to fetch more than one rows using cursors in db2
问题描述
如何使用db2中的游标获取多行?
我正在使用游标从表中获取记录。我一次只能获取一行。需要获取多条记录。请帮助。
创建或替换程序RTIMD.TicketDaemonProc(IN IN_RTIM_ID VARCHAR(50)默认'',IN usr_name VARCHAR(20)DEFAULT'',
IN api_method VARCHAR(50)DEFAULT'',IN params VARCHAR(2500)default'',IN application_name VARCHAR(20)default'',OUT V_OUT VARCHAR(2000))
LANGUAGE SQL BEGIN
DECLARE USER_IDS VARCHAR(5000);
DECLARE cursor1 CURSOR WITH RETURN FOR select USER_ID来自RTIMD.V3_SERVICE_NOW_ASSIGNMENT_GROUPS,其中GROUP_ID = IN_RTIM_ID;
OPEN cursor1; FETCH FROM cursor1 INTO USER_IDS; CLOSE cursor1;
提前致谢。
How to fetch more than one rows using cursors in db2?
I'm using cursor to fetch records from a table. Am just able to fetch only one row at a time. Need to fetch more than one records. Please help.
CREATE or REPLACE PROCEDURE RTIMD.TicketDaemonProc (IN IN_RTIM_ID VARCHAR(50) default '', IN usr_name VARCHAR(20) DEFAULT '',
IN api_method VARCHAR(50) DEFAULT '', IN params VARCHAR(2500) default '', IN application_name VARCHAR(20) default '', OUT V_OUT VARCHAR(2000))
LANGUAGE SQL BEGIN
DECLARE USER_IDS VARCHAR(5000);
DECLARE cursor1 CURSOR WITH RETURN FOR select USER_ID from RTIMD.V3_SERVICE_NOW_ASSIGNMENT_GROUPS where GROUP_ID = IN_RTIM_ID;
OPEN cursor1; FETCH FROM cursor1 INTO USER_IDS; CLOSE cursor1;
Thanks in advance.
推荐答案
CREATE or REPLACE PROCEDURE RTIMD.TicketDaemonProc (IN IN_RTIM_ID VARCHAR(50) default '', IN usr_name VARCHAR(20) DEFAULT '',
IN api_method VARCHAR(50) DEFAULT '', IN params VARCHAR(2500) default '', IN application_name VARCHAR(20) default '', OUT V_OUT VARCHAR(2000))
动态结果集1
DECLARE cursor1 CURSOR WITH RETURN FOR RTIMD.V3_SERVICE_NOW_ASSIGNMENT_GROUPS中的USER_ID,其中GROUP_ID = IN_RTIM_ID;
OPEN cursor1;
这从表格中检索了多条记录。
DYNAMIC RESULT SETS 1
DECLARE cursor1 CURSOR WITH RETURN FOR select USER_ID from RTIMD.V3_SERVICE_NOW_ASSIGNMENT_GROUPS where GROUP_ID = IN_RTIM_ID;
OPEN cursor1;
This retrieved more than one record from a table.
这篇关于如何使用db2中的游标获取多行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!