Oracle存储过程调用有返回结果集的存储过程一般用游标的方式,声明一个游标,把结果集放到游标里面,然后循环游标
DECLARE
NEWCS SYS_REFCURSOR;
CS1 NUMBER;
CS2 NUMBER;
CSTYPE TABLE%ROWTYPE;---table列的个数和NEWCS返回的个数一样
BEGIN
procedure(参数1,参数2,NEWCS);
LOOP
FETCH NEWCS INTO CS1,CS2; ---此处根据返回结果个数而定
FETCH NEWCS INTO CSTYPE; ---CSTYPE和 NEWCS一一对应
EXIT WHEN NEWCS%NOTFOUND;
---放置要处理的方法 INSERT,UPDATE
---如果有CSTYPE取游标的值,取值方法 CSTYPE.Column_Name
END LOOP;
CLOSE NEWCS;
END;