oracle 游标详解

项目github地址:bitcarmanlee easy-algorithm-interview-and-practice
欢迎大家star,留言,一起学习进步

游标是映射在结果集中一行数据上的位置实体,有了游标,用户就可以访问结果集中的任意一行数据。将游标放置到某行后,即可对该行数据进行操作,例如提取当前行的数据,当前行的某些字段等。

在大多数时候我们在设计程序的时候都遵循下面的步骤:
1、打开游标
2、开始循环
3、从游标中取值
4、检查那一行被返回
5、处理
6、关闭循环
7、关闭游标

DECLARE 
	--定义记录类型的变量
	v_user TMP_T2%rowtype;
	--1,利用cursor关键字声明游标
	cursor user_cur is
		select * from TMP_T2;
BEGIN
	--2,打开游标
	open user_cur;
	--3,利用fetch读取数据
	FETCH user_cur
		into v_user;
		while user_cur%found loop 
			dbms_output.put_line(v_user.name);
			FETCH user_cur
				into v_user;
	end loop;
	--4,释放游标
	close user_cur;
END;

用于FOR循环的游标按照正常的声明方式声明,它的优点在于不需要显式的打开、关闭、取数据,测试数据的存在、定义存放数据的变量等等,相比而言代码更简单明了

DECLARE
	cursor names_all is
		select * from tmp_t2;
BEGIN
	for each_item in names_all loop
		dbms_output.put_line(each_item.name);
	end loop;
end;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值