是这样的
小弟定义变量如下
big_trade PRODUSRTB.WMRPT_BIGTRADE%rowtype;
TYPE ref_cursor_type is REF CURSOR;
select_cursor ref_cursor_type ;
PRODUSRTB.WMRPT_BIGTRADE这张表中间 有A,B,C,D,E,5列。游标select_cursor
是select a,b from table b where;
现在问题是这样的 我要把游标的查询结果 写到 big_trade.A,big_trade.C 怎么实现这个问题? 请各位不吝赐教
------解决方案--------------------
如果查询select a,b from table b where...只返回一行,可以
open select_cursor;
fetch select_cursor into big_trade;
但如果查询出来的结果集多于1行,那么无法将结果一次写入到一个big_trade变量中。
------解决方案--------------------
IF NOT select_cursor%ISOPEN THEN(看游标是否打开)
OPEN emp_cursor;(打开游标)
END IF;
LOOP
FETCH select_cursor INTO big_trade.A,big_trade.C;(将值放入变量,FETCH一次只能处理一行数据)
EXIT WHEN select_cursor%NOTFOUND;(%FOUND表示获得数据,%NOTFOUND表示没有获得数据)
END LOOP;
close select_cursor;(关闭游标)