프로시져에서 다중 return 값 받는법 부탁드려요 ㅠ 0 2 1,494

by yamis [PL/SQL] PL/SQL procedure [2021.07.11 01:49:29]


안녕하세요 선배님들~!!

이전 글들 읽다가 프로시져 사용시 다중행 retrun 값 받는 것을 확인하였습니다.

var p_cursor refcursor

exec p_test('p_cursor');

여기까지는 이해했는데요

 

프로시저 단일값 return 경우에

SELECT  req_no(SYSDATE) as TRANS_REQ_NO  FROM DUAL

이런식으로 받았었는데요

return 가 두개 이상일때는 어떻게 받아야 하나요?

변수를 두개 쓴다고 쳐도 따로 따로 어떻게 받을수 있을까요?

아래와 같이 ERR_CD, ERR_MSG  두개가 return 값입니다

두개의 rerturn 값은 다중행은 아니고 varchar 단일 값들 입니다.

CANCEL_PROC ( ERR_CD, ERR_MSG, {매개변수1}, {매개변수2} );
by 마농 [2021.07.12 08:11:22]

1. exec p_test('p_cursor'); 에서 따옴표는 없어야 하구요
2. SELECT 를 통해 받는 것은 프로시져가 아니라 함수입니다.
3. 여러개 값을 받으려면 여러개 변수 선언해서 호출하시면 됩니다.


by yamis [2021.07.12 17:33:12]

답변감사드립니다!

아 제가 예시드린건 함수였네요

말씀해주신 부분 참고해서 구글링 하여 찾았습니다!

감사드립니다!

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