首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

请教一个SQL语句的有关问题

2011-12-25 
请教一个SQL语句的问题是这样的小弟定义变量如下big_tradePRODUSRTB.WMRPT_BIGTRADE%rowtypeTYPEref_curs

请教一个SQL语句的问题
是这样的
小弟定义变量如下
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;(关闭游标)

热点排行