4. PLSQL中的游标

1.5 PLSQL中的游标

1.5.1游标的概念

游标(cuscor)可以看作私有sql区的句柄或名称,在sql语句执行过程中保存解析后的语句和其他信息
1.隐式游标与显式游标
游标分为隐式游标和显式游标
1)隐式游标
当运行DML与SELECT INTO语句时,PLSQL会打开一个隐式游标,隐式游标自动打开,自动关闭,无法人工干预
2)显示游标
用户在代码中定义的游标,并由用户在程序中控制打开,检索,关闭
----》操作分为4步:定义游标,打开游标,检索游标,关闭游标
----》只能指向一行,可以循环检索(叫做游标循环)
----》游标循环的使用频率高
2.游标的属性
在这里插入图片描述

在这里插入图片描述

1)隐式游标的属性
由于没有显示的声明游标,所以隐式游标也没有名字,引用隐式游标属性只能使用关键字sql,如果语句块中存在多个dml和select into ,则隐式游标属性为最近执行的sql的属性
A)SQL%ROWCOUNT
返回的行数
在这里插入图片描述

B)SQL%ISOPEN
在这里插入图片描述

C)SQL%FOUND
%FOUND:是否涉及到行,由于该表被删除,所有的行记录都被删除了,因此返回rows found
在这里插入图片描述在这里插入图片描述

D)SQL%NOTFOUND
%NOTFOUND :是否涉及到行,涉及不到行,显示为真
2)显示游标属性
A)SQL%ROWCOUNT
累计行数
在这里插入图片描述

B)SQL%ISOPEN
%ISOPEN:通常使用在异常判断里
在这里插入图片描述在这里插入图片描述

C)SQL%FOUND
在这里插入图片描述

D)SQL%NOTFOUND
效果和%FOUND相反
3.游标的循环
由于显式游标的%ROWCOUNT,只能提取一行数据,而游标对应的sql语句可能返回很多的行,而游标只能一次提取一行,此时我们需要使用循环遍历这些行
1)简单游标循环
在这里插入图片描述

  1. WHILE游标循环
    While游标循环需要写fetch2次
    在这里插入图片描述

  2. FOR游标循环(常用)
    游标FOR循环比较简单,并且自动打开游标,自动关闭游标。
    游标FOR循环有两种实现形式
    R----》表示记录类型变量
    在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值