oracle中使用游标,oracle中游标的使用

5268f80b9b1e01f982625ef6fac83ca1.png

3.SQL%NOTFOUND    布尔型 值为true表示插入、删除、更新或单行查询操作失败。

4.SQL%ISOPEN  布尔型 DML执行过程中为真,结束后为假

三,游标的使用

隐式游标的使用主要就是以上的四种属性的使用,使用它们来进行一些流程控制。

显示游标的声明和使用

cursor cursor_name[ 参数1 参数类型,参数2,参数类型...]  is select 语句;

游标的使用步骤:

1.声明一个游标

2.打开游标 open 游标名(参数1,参数2..);

3.使用循环遍历游标,从游标中取值。fetch 游标名 into 变量名,循环的退出条件是 游标名%notfound;

4.关闭游标 close 游标名;

游标的遍历(两种方式)

1.使用loop循环遍历

例如 :

declare

cursor outemp is  select * from emp;

ouem emp%rowtype;//也可以是%type,但是必须和表中的类型一致。

begin

open outemp;

loop

fetch outemp into ouem;

exit when outemp%notfound;//退出条件

dbms_output.put_line(ouem.ename || ‘ ‘ ||ouem.sal);

end loop;

close outemp;

end;

2.使用for循环遍历游标

例如:

declare

cursor outfor is  select * from emp;begin

for vrow in outfor loop

dbms_output.put_line(vrow.ename || ‘ ‘ || vrow.sal);

end loop;

end;

使用for循环遍历游标的好处:1.不用声明额外的变量,2.不用打开和关闭游标,3.写法简单。

系统引用游标

1. 声明游标 : 游标名 sys_refcursor

2. 打开游标: open 游标名 for select语句;

3. 从游标中取数据

4. 关闭游标

例如:--输出员工表中所有的员工姓名和工资

declare

vrows sys_refcursor;

vrow emp%rowtype;

beginopen vrows for select * from emp;

loop  fetch vrows into vrow;

exit when vrows%notfound;

dbms_output.put_line(‘姓名:‘||vrow.ename ||‘ 工资: ‘ || vrow.sal);

end loop;

close vrows;

end;以上就是游标的基础,使用游标时一定要记得关闭游标,还有就是在定义变量时需要注意定义的类型必须要和表中的字段类型一致,否则会出错。

详情参见:https://blog.csdn.net/liyong199012/article/details/8948952

oracle中游标的使用

标签:sop   用户   能力   open   upd   etc   log   out   方法

1428d0e076c3959ab11d28a39bc84fab.png

5268f80b9b1e01f982625ef6fac83ca1.png

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:https://www.cnblogs.com/meizhoulqp/p/11357056.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值