프로시져에서 여러행을 리턴하는 방법? 0 5 3,913

by 불장작 [Oracle 기초] [2020.05.14 09:41:10]


오라클 프로시져에서 여러행을 리턴하는 예제를 알려주세요

고수님들의 조언 부탁드립니다.

by 마농 [2020.05.14 09:53:31]

by 불장작 [2020.05.14 11:00:32]

답변감사합니다.

그런데 제가 초보라서 소스파악하기가 힘듭니다. 그냥

SELECT '1' CODE, '홍길동' NAME FROM DUAL UNION ALL

SELECT '2' CODE, '이순신' NAME FROM DUAL 에 해당되는 자료를 프로시져의 CURSOR를 통해서 RETURN하는 스크립트가 필요합니다.


by 마농 [2020.05.14 11:22:16]
CREATE OR REPLACE PROCEDURE p_test (p_cursor OUT SYS_REFCURSOR)
IS
BEGIN 
  OPEN p_cursor FOR SELECT * FROM emp;
END;
/

 


by 불장작 [2020.05.14 15:15:34]

답변감사합니다.

프로시져를

CREATE OR REPLACE PROCEDURE p_test (p_cursor OUT SYS_REFCURSOR)
IS
BEGIN
  OPEN p_cursor FOR
  SELECT userid, deptcd, resno
    FROM ccusermt
   WHERE userid in('01094', '18000', '55004');
END;
/
으로 등록했는데 호출하는 방법은 골든에서 어떻게 되나요?


by 아기봉 [2020.05.18 02:58:12]

var p_cursor refcursor

exec p_test('p_cursor');

 

EXEC(EXECUTE) 프로시져명(매개변수값1, 매개변수값2, ...);

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입