ORACLE中用for in 使用cursor

ISCURSORcurISSELECT*FROMxxx;BEGINFORcur_resultincurLOOPBEGINV_SUM:=cur_result.列名1+cur... IS

CURSOR cur IS SELECT * FROM xxx;

BEGIN

FOR cur_result in cur LOOP

BEGIN

V_SUM :=cur_result.列名1+cur_result.列名2

END;

END LOOP;

END;

中的CURSOR cur IS得到的是什么啊?用for in 能够得到什么啊?
展开
 我来答
匿名用户
推荐于2018-03-19
展开全部
CURSOR cur IS是定义一个游标,然后把游标里定义的查询语句存储到游标里
因为查询语句查出来的数据往往是几条记录
但是你用的时候缺只能一条一条取出来用
这时游标的好处就体现出来了
游标存储时 存的是几条记录
但是读取时 他是一条记录一条记录读取的
然后再使用FOR IN循环一下
就可以将你存储在游标里的记录一条一条的读取出来 但是每次只读取一条
以方便你的使用
这种情况如果不使用游标 往往会出现返回多行结果的错误
匿名用户
2013-04-23
展开全部
CURSOR cur IS 是显性游标,提出的是SELECT * FROM xxx中所有数据,在打开这个游标后 下面的东西都可以引用这个游标内容作为条件了,比如SELECT name FROM aaa ,那么 下面就可以用到 cur.name 作为值来用了,注意CURSOR cur IS提出的是一列数,每循环一次进入下一条数据,直到循环完毕没数据为止。
FOR cur_result in 是隐形游标,使用方法和显性游标大致一样,后面一般是
FOR cur_result in(select ? from ? where ?)loop
...
end loop; 提出的也是一列值,循环一次换下一条
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
灬Linhoo
2013-04-23 · TA获得超过104个赞
知道小有建树答主
回答量:226
采纳率:0%
帮助的人:143万
展开全部
前面是 定义游标
后面 循环 游标 这是隐式的游标 使用 、 使用一个 cur_result 循环 ..

for in 循环 得到了 cur_result select* from XXx , 这个sql 的 数据 一次 取一行 、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式