温故知新-游标

游标主要分为隐式游标和显式游标两种。

显式游标的定义

DECLARE
    v_Emp Emp%ROWTYPE;
    --定义显式游标
    CURSOR Emp_Cur IS
        SELECT *
          FROM Emp;
BEGIN
    --打开游标
    IF NOT Emp_Cur%ISOPEN THEN
        OPEN Emp_Cur;
    END IF;
    --循环读取游标数据
    FETCH Emp_Cur
        INTO v_Emp;
    LOOP
        EXIT WHEN Emp_Cur%NOTFOUND;
        Dbms_Output.Put_Line('员工编号:' || v_Emp.Empno || ' 员工姓名:' ||
                             v_Emp.Ename);

        FETCH Emp_Cur
            INTO v_Emp;
    END LOOP;
    --关闭游标
    CLOSE Emp_Cur;
END;

for循环遍历游标,for循环会自动打开和关闭游标。

DECLARE
    v_Emp Emp%ROWTYPE;
    --定义显式游标
    CURSOR Emp_Cur IS
        SELECT *
          FROM Emp;
BEGIN
    FOR c IN Emp_Cur LOOP
        Dbms_Output.Put_Line('员工编号:' || c.Empno || ' 员工姓名:' || c.Ename);
    END LOOP;
END;

——————————-output——————————–
员工编号:7789 员工姓名:SCOTT
员工编号:7369 员工姓名:SMITH
员工编号:7499 员工姓名:ALLEN
员工编号:7521 员工姓名:WARD
员工编号:7566 员工姓名:JONES
员工编号:7654 员工姓名:MARTIN
员工编号:7698 员工姓名:BLAKE
员工编号:7782 员工姓名:CLARK
员工编号:7788 员工姓名:SCOTT
员工编号:7844 员工姓名:TURNER
员工编号:7876 员工姓名:ADAMS
员工编号:7900 员工姓名:JAMES
员工编号:7902 员工姓名:FORD
员工编号:7934 员工姓名:MILLER

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值