oracle 中的游标

oracle 中的游标

通俗易懂的sql代码直接上!

--简单的游标使用滴呀
 --使用FOR OBJ IN OBJS LOOP ......END LOOP;
DECLARE
  CURSOR C_JOB  
  IS 
  SELECT NAME,COURSE,GREADE
  FROM STU;
  C_ROW C_JOB%ROWTYPE;
  
  BEGIN
    --利用for循环来使用取出我们的结果结合;
     FOR C_ROW IN C_JOB LOOP
      DBMS_OUTPUT.put_line(C_ROW.NAME||'---'|| C_ROW.COURSE);  
     END LOOP;
  END;
 
 --使用我们的Fetch 游标;
 DECLARE 
    CURSOR C_JOB
    IS
    SELECT NAME,COURSE 
    FROM STU;
    --定义一个游标变量滴呀
    C_ROW C_JOB%ROWTYPE;
    
    BEGIN
       OPEN C_JOB;
       LOOP
         --提取到行中滴呀
         FETCH C_JOB INTO C_ROW;
         --判断是否读取到值,没有读取到值就退出;
         --取到值 c_job%notfound 是false;
         --取不到 c_job%notfound 是true
         EXIT WHEN C_JOB%NOTFOUND;  --还是类似循环的去读取值滴哎呦
         DBMS_OUTPUT.put_line(C_ROW.NAME);
         END LOOP; 
         --
         CLOSE C_JOB; --关闭游标滴呀
         
    END;

 实例—;

   --还有复习 net中的基础知识滴呀;
   --特别c#中的各种代码滴呀
   
   DECLARE 
     CURSOR CUR
     IS
     SELECT DNAME FROM DEPT;
     ROW_TYPE CUR%ROWTYPE;
     
     BEGIN
         FOR ROW_TYPE IN CUR LOOP
             DBMS_OUTPUT.put_line(ROW_TYPE.DNAME);
         END LOOP;
     END;
     

TO BE CONTINUED.....

原文地址:https://www.cnblogs.com/mc67/p/5596297.html