데이타베이스/Oracle
오라클 동적 쿼리를 이용한 CURSOR 사용
짱지
2011. 8. 31. 14:00
DECLARE
vCur_Sql := 'SELECT name, emp, money FROM ' || v_tabname;
OPEN cur_test FOR vCurSql;
LOOP
FETCH cur_test INTO v_val1, v_val2, v_val3;
작업 코딩
EXIT WHEN cur_test%NOTFOUND;
END LOOP;
CLOSE cur_test;
END;
v_tabname NUMBER; -- 대상 테이블
v_fldname VARCHAR2(100); -- 대상에서 읽을 필드명
v_val1 VARCHAR2(100); -- 읽은 값 저장할 변수
v_val2 VARCHAR2(100); -- 읽은 값 저장할 변수
v_val3 VARCHAR2(100); -- 읽은 값 저장할 변수
TYPE type_cur is REF CURSOR; -- 리퍼런스 커서 타입 선언
cur_test type_cur; -- 커서타입으로 커서 선언
vCurSql VARCHAR2(32767);
vCur_Sql := 'SELECT name, emp, money FROM ' || v_tabname;
OPEN cur_test FOR vCurSql;
LOOP
FETCH cur_test INTO v_val1, v_val2, v_val3;
작업 코딩
EXIT WHEN cur_test%NOTFOUND;
END LOOP;
CLOSE cur_test;
END;