오라클 PL/SQL 커서, 쉬운 예제로 알아보기

ino5·2021년 4월 26일
0
post-thumbnail

소개


PL/SQL에서 커서(Cursor)가 무엇인지 알아보기 위해 간단한 예제를 정리해보았습니다. 한 테이블의 SELECT 결과를 출력해보겠습니다.



테이블


<department>

dnodnameloc
10ACCOUNTINGNEW YORK
20RESEARCHDALLAS
30SALESCHICAGO
40OPERATIONSBOSTON



PL/SQL 결과




커서를 이용한 SELECT 출력


OPEN, FETCH, CLOSE 이용한 기본 형태

set serveroutput on
declare
  v_dept department%rowtype;
  cursor c1
  is
  SELECT * FROM department;
  
begin
  open c1;
  loop
    fetch c1 into v_dept.dno, v_dept.dname, v_dept.loc;
    exit when c1%notfound;
    dbms_output.put_line(v_dept.dno||', '||v_dept.dname||', '||v_dept.loc);
  end loop;
  close c1;
  
end;
/

CURSOR FOR LOOP 활용한 형태

set serveroutput on
declare
  v_dept department%rowtype;
  cursor c1
  is
  SELECT * FROM department;
  
begin
  for v_dept in c1 loop
    exit when c1%notfound;
    dbms_output.put_line(v_dept.dno||', '||v_dept.dname||', '||v_dept.loc);
  end loop;
  
end;
/





참고 : 서적 'Oracle 11g 프로그래밍'

profile
궁금한 것을 찾아보거나 문제를 해결한 과정을 날 것의 글로 작성하였습니다.

0개의 댓글