programing

선택적 매개 변수를 사용하여 절차를 만드는 방법은 무엇입니까?

linuxpc 2023. 8. 9. 20:33
반응형

선택적 매개 변수를 사용하여 절차를 만드는 방법은 무엇입니까?

선택적 매개 변수로 프로시저를 만들 수 있습니까?예를 들어, 모든 매개 변수를 합산하는 절차를 생성합니다.

add(n1, n2, .... nn)

예를 들어, 11개의 매개변수가 있으며, 1에서 10까지 더하면 마지막 매개변수가 다른 작업을 수행할 수 있습니다.구글 검색을 통해 어레이를 사용하여 이를 수행할 수 있는 것처럼 보이지만, 제가 얻은 결과의 대부분은 plsql이 아닌 다른 프로그래밍 언어에 관한 것이었습니다.이론을 plsql에 적용하면 varray 또는 nested table을 사용해야 하나요?

매개 변수를 기본값으로 선언해야 합니다.

procedure add (n1 number, 
               n2 number default 0,
               ...
               nn number default 99) is ...

다음 절차 사용:

begin
  add(1);
  add(5, 6, 7, ..., 111);
  add(n1 => 111, n5 => 345, nn => 17);
end;

마지막 경우, 보시는 바와 같이 3개의 파라미터에 대한 값을 전달할 수 있습니다(n1,n5,nn), 다른 매개 변수의 경우 기본값이 사용됩니다.

이 작업을 수행할 수 있습니다.DEFAULT연산자 또는 '='

PROCEDURE ADD(NUMBER n1, NUMBER n2, NUMBER n3 DEFAULT 0)....

http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/fundamentals.htm#CHDFADII

호출에 명시적인 매개 변수 이름을 지정하지 않고 사용하려면 선택적 매개 변수를 절차 서명 목록의 끝에 배치해야 합니다.호출 시 명시적 매개 변수 명명을 사용하여 어디에나 배치할 수 있습니다.

언급URL : https://stackoverflow.com/questions/35124024/ways-to-create-a-procedure-with-optional-parameters

반응형