select_Insa 프로시져
CREATE OR REPLACE PROCEDURE select_Insa
(
pResult OUT SYS_REFCURSOR -- 파라미터가 OUT이라 해당값을 불러온 놈에게 돌려준다 => list_Insa 프로시져의 실행문 select_Insa(vResult,pcity);
,pcity IN insa.city%TYPE
)
IS
BEGIN
OPEN pResult FOR SELECT name, city FROM insa WHERE city=pcity;
END;
/
list_Insa 프로시져
CREATE OR REPLACE PROCEDURE list_Insa
( -- 실행자에 의해서 받아올 인수( 파라미터가 IN이면 해당 프로시져안에서 소화한다, OUT이면 불러온 실행문에 값을 돌려준다)
pcity IN insa.city%TYPE
)
IS -- 실행문에서 사용될 변수
vResult SYS_REFCURSOR;
vname insa.name%TYPE;
vcity insa.city%TYPE;
BEGIN
select_Insa(vResult,pcity); -- 이 문장이 select_Insa 테이블에 값을 넘겨준다.
LOOP
FETCH vResult INTO vname, vcity;
EXIT WHEN vResult%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(vname || ' ' || vcity);
END LOOP;
END;
/
'오라클' 카테고리의 다른 글
오라클 VIEW 뷰 (0) | 2013.06.06 |
---|---|
상관하위부 질의 (0) | 2013.06.06 |
프로시져(Stored Procedure) (0) | 2013.06.04 |
PL/SQL (0) | 2013.06.04 |
트랜잭션 (0) | 2013.06.04 |