ITPub博客

首页 > 数据库 > Oracle > oracle游标

oracle游标

Oracle 作者:xby333 时间:2013-12-07 21:34:04 0 删除 编辑

--while循环与游标的利用
SET SERVEROUTPUT ON
DECLARE
      v_eno emp.empno%type;
      v_name emp.ename%type;
      CURSOR emp_sal_cur(p_no emp.sal%type) IS SELECT empno,ename
      FROM emp WHERE sal
BEGIN
     OPEN emp_sal_cur(3000);
     FETCH emp_sal_cur INTO v_eno,v_name;
     DBMS_OUTPUT.PUT_LINE(v_eno||" "||v_name);
     WHILE emp_sal_cur%FOUND LOOP
        FETCH emp_sal_cur INTO v_eno,v_name;
     DBMS_OUTPUT.PUT_LINE(v_eno||" "||v_name);
     END LOOP;
     CLOSE emp_sal_cur;
END;

--for循环与游标的利用(最简单的编制)
DECLARE
      v_eno emp.empno%type;
      v_name emp.ename%type;
      CURSOR emp_sal_cur(p_no emp.sal%type) IS SELECT empno,ename
      FROM emp WHERE sal
BEGIN
     FOR v_emp IN emp_sal_cur(3000) LOOP--自动挨开游标
        DBMS_OUTPUT.PUT_LINE(v_emp.empno||v_emp.ename);
     END LOOP;--自动封闭游标
END;

--小实习
DECLARE
      v_deptno dept.deptno%type;
      v_dname dept.dname%type;
      v_loc dept.loc%type;
      CURSOR dept_cur IS SELECT deptno,dname,loc
      FROM dept ;
BEGIN
     FOR v_dept IN dept_cur LOOP
        DBMS_OUTPUT.PUT_LINE(v_dept.deptno||" "||v_dept.dname||" "||v_dept.loc);
     END LOOP;
END;


<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21143678/viewspace-1117509/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-03-18

  • 博文量
    1
  • 访问量
    2216