nickjoIT

커서(Cursor) For Loop 본문

DB/oracle

커서(Cursor) For Loop

nickjo 2017. 5. 26. 15:20

DECLARE

  --부서별 사원 정보를 추출하는 커서 선언

  CURSOR emp_cursor(p_deptno NUMBER)

  IS

    SELECT ename,empno

      FROM emp

     WHERE deptno=p_deptno;

BEGIN

  --커서 결과 건수만큼 LOOP가 수행됨

  --emp_cursor 커서에 10번 부서로 조회하여 emp_rec 레코드 변수에 저장

  FOR emp_rec IN emp_cursor(10)

  LOOP

    --emp_rec 레코드의 값을 출력. 레코드.칼럼 이름으로 출력

    DBMS_OUTPUT.PUT_LINE('EMP NAME:' || emp_rec.ename);

    DBMS_OUTPUT.PUT_LINE('EMP EMPNO:' || emp_rec.empno);

  END LOOP;

END;

/

----------------------------------------------------------------------

DECLARE

BEGIN

  --SQL 결과 건수만큼 LOOP가 수행됨

  FOR emp_rec IN

    (SELECT ename,empno

       FROM emp

      WHERE deptno=10)

  LOOP

    DBMS_OUTPUT.PUT_LINE('EMP ENAME:' || emp_rec.ename);

    DBMS_OUTPUT.PUT_LINE('EMP EMPNO:' || emp_rec.empno);

  END LOOP;

END;

/

'DB > oracle' 카테고리의 다른 글

CURSOR LOOP  (0) 2017.05.26
단 한건만 반화하는 명시적 커서의 예  (0) 2017.05.26
For Loop  (0) 2017.05.26
While Loop  (0) 2017.05.26
기본 LOOP  (0) 2017.05.25
Comments