PL/SQL游标使用

游标是用来处理使用SELECT语句从数据库中检索到的多行记录的工具。借助游标的功能,数据库应用程序可以对一组记录逐个进行处理,每次处理一行。

游标是从数据表中提取出来的数据,以临时表的形式存放在内存中

--普通游标,游标本身就是一个变量

 

一个游标(cursor)可以被看作指向结果集(a set of rows)中一行的指针(pointer)。

(3).使用FOR循环处理游标
create or replace PROCEDURE PROC_STU3 AS
BEGIN
--显示游标使用,使用for循环
declare
--定义游标,名称为cur_stu
cursor cur_stu is
select stuno,stuname from student order by stuno;
begin
for stu in cur_stu
loop
dbms_output.PUT_LINE(stu.stuno||'->'||stu.stuname);
--循环做隐含检查 %notfound
end loop;
--自动关闭游标
end;
END PROC_STU3;

 

SQL> DECLARE
  2    emp_id employees_test.employee_id%type;
  3    CURSOR cur IS
  4      SELECT b.employee_id, b.ROWID ROW_ID
  5        FROM employees_test b
  6       ORDER BY b.ROWID; ---如果表的数据量不是很大,可以不用 order by rowid
  7  BEGIN
  8    FOR row IN cur LOOP
  9      DBMS_OUTPUT.PUT_LINE('last name: '||row.employee_id||'--'||row.ROW_ID);
 10    END LOOP;
 11  END;
 12  /

last name: 198--AAASStAAEAAAbazAAA
last name: 199--AAASStAAEAAAbazAAB
last name: 200--AAASStAAEAAAbazAAC
last name: 201--AAASStAAEAAAbazAAD
last name: 202--AAASStAAEAAAbazAAE
last name: 203--AAASStAAEAAAbazAAF
last name: 204--AAASStAAEAAAbazAAG
last name: 205--AAASStAAEAAAbazAAH
last name: 206--AAASStAAEAAAbazAAI

 

转载于:https://www.cnblogs.com/zhaoyangjian724/p/3798089.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值