programing

MySQL의 저장 프로시저 내에 선택적 매개 변수를 작성하시겠습니까?

newnotes 2023. 9. 2. 10:11
반응형

MySQL의 저장 프로시저 내에 선택적 매개 변수를 작성하시겠습니까?

테이블에 전달된 매개 변수에 따라 테이블의 모든 필드 또는 일부 필드만 업데이트하는 저장 프로시저를 만들고 싶습니다.

선택적 매개 변수를 허용하는 저장 프로시저를 만들려면 어떻게 해야 합니까?

Optional ParametersMySQL에서는 아직 지원되지 않습니다.제 말은 당신이 통과하기를 제안하는 겁니다.null매개 변수의 값과 저장 프로시저 내부의 값은IF진술.

DELIMITER $$
CREATE PROCEDURE procName
(IN param VARCHAR(25))
BEGIN
   IF param IS NULL THEN 
      -- statements ;
   ELSE commands
      -- statements ;
   END IF;
END$$
DELIMITER ;

특수한 경우는 매개 변수가 NULL일 수 없는 경우입니다. 즉, 키이기 때문입니다.저는 이런 경우에 속임수를 씁니다.파라미터를 -1로 설정합니다.

CREATE PROCEDURE procCreate
(IN id_cosa INT(11))
  BEGIN
    IF id_cosa != -1 THEN
      ~~(your code here)~~
    END IF
  END

언급URL : https://stackoverflow.com/questions/12652241/writing-optional-parameters-within-stored-procedures-in-mysql

반응형