programing

저장 프로시저에서 파라미터를 검색하시겠습니까?

powerit 2023. 11. 4. 13:21
반응형

저장 프로시저에서 파라미터를 검색하시겠습니까?

오라클에 저장 프로시저 하나를 만들었습니다.

PROCEDURE string_opp(input_string IN varchar2,output_string OUT varchar2)

이제 문제는 이 저장 프로시저를 실행하고 출력 파라미터를 검색하는 방법입니다.sql 개발자를 팔로우했습니다.

SET SERVEROUTPUT ON
DECLARE
  outputString VARCHAR;
BEGIN
  EXEC string_opp('input String',:outputString);
END;

내가 이것을 시도했을 때 아무것도 얻지 못했는데, 누가 나를 도와줄 수 있습니까?

몇 가지 문제가 있습니다.

SET SERVEROUTPUT ON
DECLARE
   outputString VARCHAR(20);
BEGIN
  string_opp('input String', outputString);
  dbms_output.put_line(outputString);
END;

동일한 변수로 사용할 수 있습니다.

SET SERVEROUTPUT ON
DECLARE
   outputString VARCHAR(20);
BEGIN
  outputString := 'input String';
  string_opp(outputString);
  dbms_output.put_line(outputString);
END;

절차 파라미터를 그냥 OUT 대신 IN OUT으로 정의합니다.

이 리소스를 확인합니다.

http://psoug.org/snippet/FUNCTIONS-IN-OUT-parameter_873.htm

예를 들어 다음과 같습니다.

출력 파라미터와 함께 저장 프로시저가 있는 경우:

Create procedure test(name out varchar2(50))
as
begin
name:='testing output parameter';
-- dbms_output.put_line('Output parameter value ' || name );
end;

이제 위의 절차를 실행합니다.

declare
l_name varchar2(50);
begin
test(l_name);
dbms_output.put_line( 'name = ' || l_ename );
end;

언급URL : https://stackoverflow.com/questions/14649657/retrieve-out-parameter-from-stored-procedure

반응형