관리 메뉴

nalaolla

ORACLE 프로시져 생성(간단설명) 본문

ORACLE

ORACLE 프로시져 생성(간단설명)

날아올라↗↗ 2015. 12. 9. 16:00
728x90

1. Creating a Package

INSERT, UPDATE, DELETE 의 경우는 프로시져 생성시 별다른 이슈가 발생하지 않는다..리턴값이 발생하지 않기 때문에..

하지만 SELECT의 경우 리턴값을 받아야 하기때문에 커서에 해당 ResultSet을 담아 리턴해주어야 한다.

먼저 패키지를 생성한다.

CREATE OR REPLACE PACKAGE TYPES AS --> 패키지명은 "TYPES" TYPE cursorType is REF CURSOR;    --> 패키지에 생성된 커서타입 REF CURSOR END TYPES;



2. Creating a Procedure


CREATE OR REPLACE PROCEDURE UP_GET_TABLES (     PSEARCH_FIELD IN VARCHAR2, --SEARCH FIELD     PLIST1 OUT TYPES.CURSORTYPE, --> 첫째 select값을 LIST1 커서에 담는다.     PLIST2 OUT TYPES.CURSORTYPE --> 두번째 select값을 LIST2 커서에 담는다. ) AS BEGIN --============================================================= --LIST1 OPEN PLIST1 FOR    --> 커서를 오픈하고 ";"까지의 select값을 담는다. SELECT ID, PW, NAME FROM JAVA_PROJECT.MEMBER; --============================================================= --LIST2 OPEN PLIST2 FOR    --> 커서를 오픈하고 ";"까지의 select값을 담는다.

SELECT TITLE, CONTENT, WRITER FROM JAVA_PROJECT.BOARD; --============================================================= END UP_GET_TABLES;



3. Call a Procedure

--> 변수선언

VAR List1 REFCURSOR VAR List2 REFCURSOR

--> 변수값(Varchar2 인자값, List1커서, List2커서)을 포함하여 해당 프로시져를 호출한다. EXEC UP_GET_TABLES('SEARCH_VALUE', :List1, :List2); 


--> OUT값 출력 PRINT List1; PRINT List2;


728x90

'ORACLE' 카테고리의 다른 글

오라클 내장함수 모음  (0) 2015.12.17
오라클 select문 예제, 함수모음  (0) 2015.12.17
오라클 프로시저에서 SELECT 사용하기 및 데이터 확인  (0) 2015.12.09
JDBC MemberDTO  (0) 2015.12.07
JDBC MemberDAO  (0) 2015.12.07