PL/SQL光标之光标的引入

光标

就是一个结果集(Result Set)

光标的语法

CURSOR 光标名 [(参数名 数据类型[参数名,数据类型]..)]

IS SELECT 语句;

一个具体的光标

cursor c1 is select ename form emp;

从光标中取值

打开光标:

  • open c1; (打开光标执行查询)

关闭光标:

  • close c1; (关闭光标释放资源)

取一行光标的值:

  • fetch c1 into pename; (取一行到变量中)

案例

--查询并打印员工的姓名和薪水
/*
1.光标的属性
    %found %notfound
*/
SET SERVEROUTPUT ON

DECLARE
    --定义一个光标
    cursor cemp is select first_name,last_name,salary FROM EMPLOYEES;
    --为光标定义对应的变量
    pe_first_name employees.first_name%type;
    pe_last_name employees.last_name%type;
    psal employees.salary%type;
BEGIN
    --打开光标
    open cemp;
    
    loop
     --取一条记录
     FETCH cemp into pe_first_name,pe_last_name,psal;
     
     --exit when 没有取到记录;
     exit when cemp%notfound;
     
     --打印
     DBMS_OUTPUT.PUT_LINE(pe_first_name||' '||pe_last_name||':'||psal);
    end loop;
    
    --关闭光标
    close cemp;

end;
/

你可能感兴趣的:(PL/SQL光标之光标的引入)