美文网首页
Oracle 基础的游标的使用

Oracle 基础的游标的使用

作者: 玲珑花 | 来源:发表于2017-06-02 15:48 被阅读0次

    基础的游标的使用

    -- Created on2017-01-03 星期二 by ADMINISTRATOR
    
    declare 
    
    --申明游标
    
    cursor mycursor is select * from emp;--list empPO
    
    empInfo emp%rowtype;
    
    begin
    
    --游标操作使用循环,在操作之前需要把游标打开
    
    open mycursor;
    
    --使游标向下一行
    
    fetch mycursor into empInfo;
    
    --判断此行是否有数据被发现
    
    while(mycursor%found) loop
    
       dbms_output.put_line('雇员编号'||empInfo.empno);  
    
       -- dbms_output.put_line('雇员姓名'||empInfo.ename);
    
        --修改游标  继续向下
    
        fetch mycursor into empInfo;
    
    end loop;
    
    end;
    
     
    

    第二种 代码少一点

    -- Created on2017-01-03 星期二 by ADMINISTRATOR
    
    declare 
    
    --申明游标
    
    cursor mycursor is select * from emp;--list empPO
    
    empInfo emp%rowtype;
    
    cou number;
    
     
    
    begin
    
    --游标操作使用循环,在操作之前需要把游标打开
    
    open mycursor;
    
    loop 
    
      --使游标向下一行
    
      fetch mycursor into empInfo;
    
      exit when mycursor%notfound;--无数据时退出
    
      dbms_output.put_line('雇员编号'||empInfo.empno);  
    
    end loop;
    
    end;
    

    注意点:

    1、 打开游标前,先判断游标是否已经打开

    通过isopen判断,格式:游标%ISOPEN

    IF mycur%ISOPEN THEN
    
    null ;
    
    ELSE
    
    OPEN mycur ;
    
    END IF ;
    

    2、使用rowcount 对游标所操作的行数进行记录

    DECLARE
    
    -- 声明游标
    
    CURSOR mycur IS SELECT * FROM emp ;
    
    empInfo emp%ROWTYPE ;
    
    cou NUMBER ;
    
    BEGIN
    
    -- 游标操作使用循环,但是在操作之前必须先将游标打开
    
    IF mycur%ISOPEN THEN
    
    null ;
    
    ELSE
    
    OPEN mycur ;
    
    END IF ;
    
     
    
    LOOP
    
    -- 使游标向下一行
    
    FETCH mycur INTO empInfo ;
    
    EXIT WHEN mycur%NOTFOUND ;
    
    cou := mycur%ROWCOUNT ;
    
    DBMS_OUTPUT.put_line(cou||'雇员编号:'||empInfo.empno) ;
    
    DBMS_OUTPUT.put_line(cou||'雇员姓名:'||empInfo.ename) ;
    
    END LOOP ;
    
    END ;
    

    相关文章

      网友评论

          本文标题:Oracle 基础的游标的使用

          本文链接:https://www.haomeiwen.com/subject/yrsufxtx.html