2020년 7월 19일 일요일

ORACLE CURSOR Parameterized 커서

5.5 Parameterized 커서

n Parameter를 받을 수 있는 커서, 외부의 입력값을 이용하여 커서를 만들 때 사용한다.

SQL> DECLARE

CURSOR c_dept IS SELECT * FROM dept;

CURSOR c_emp(p_deptno emp.deptno%TYPE) IS

SELECT ename, sal FROM emp WHERE deptno = p_deptno;

BEGIN

FOR dept IN c_dept LOOP

DBMS_OUTPUT.PUT_LINE('=========================');

DBMS_OUTPUT.PUT_LINE(dept.deptno|| ' :: ' || dept.dname);

FOR emp_record IN c_emp (dept.deptno) LOOP

DBMS_OUTPUT.PUT_LINE(emp_record.ename || ' , ' || emp_record.sal);

END LOOP;

END LOOP;

END;

/

=========================

10 :: ACCOUNTING

……

MILLER , 2257.5

=========================

20 :: RESEARCH

SMITH , 800

……

FORD , 3000

=========================

30 :: SALES

ALLEN , 1600

……

JAMES , 950

[LAB]

1. EMP 테이블에서 급여 상위 5명을 커서를 이용하여 empno, ename, sal 값을 출력하세요.

2. 사용자로 부터 임의의 수(급여 랭킹) N을 ACCEPT를 통해 입력받아 커서를 이용하여 급여순위 N번째인 사원의 이름및 급여를 출력하는 프로시저를 작성하세요.

댓글 없음:

댓글 쓰기

(C#교육동영상)C# ADO.NET 실습 ODP.NET/ODAC 설치 오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원

  (C#교육동영상)C# ADO.NET 실습  ODP.NET/ODAC 설치  오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원 https://www.youtube.com/watch?v=qIPU85yAlzc&list=PLxU-i...