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 能够得到什么啊? 展开
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 能够得到什么啊? 展开
3个回答
推荐于2018-03-19
展开全部
CURSOR cur IS是定义一个游标,然后把游标里定义的查询语句存储到游标里
因为查询语句查出来的数据往往是几条记录
但是你用的时候缺只能一条一条取出来用
这时游标的好处就体现出来了
游标存储时 存的是几条记录
但是读取时 他是一条记录一条记录读取的
然后再使用FOR IN循环一下
就可以将你存储在游标里的记录一条一条的读取出来 但是每次只读取一条
以方便你的使用
这种情况如果不使用游标 往往会出现返回多行结果的错误
因为查询语句查出来的数据往往是几条记录
但是你用的时候缺只能一条一条取出来用
这时游标的好处就体现出来了
游标存储时 存的是几条记录
但是读取时 他是一条记录一条记录读取的
然后再使用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; 提出的也是一列值,循环一次换下一条
FOR cur_result in 是隐形游标,使用方法和显性游标大致一样,后面一般是
FOR cur_result in(select ? from ? where ?)loop
...
end loop; 提出的也是一列值,循环一次换下一条
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
前面是 定义游标
后面 循环 游标 这是隐式的游标 使用 、 使用一个 cur_result 循环 ..
for in 循环 得到了 cur_result select* from XXx , 这个sql 的 数据 一次 取一行 、
后面 循环 游标 这是隐式的游标 使用 、 使用一个 cur_result 循环 ..
for in 循环 得到了 cur_result select* from XXx , 这个sql 的 数据 一次 取一行 、
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询