다음은 입력(IN)에 대한 하나의 매개변수와 출력(OUT)에 대한 두 번째 매개변수를 취하는 저장 프로시저입니다.
mysql> delimiter // mysql> create procedure Sp_SQRT(IN Number1 INT, OUT Number2 FLOAT) -> Begin -> set Number2=sqrt(Number1); -> end; -> // Query OK, 0 rows affected (0.24 sec) mysql> delimiter ;
저장 프로시저를 호출하고 값을 사용자 변수로 보냅니다. 구문은 다음과 같습니다.
CALL yourStoredProcedureName(anyIntegerValue,@anyVariableName);
@anyVariableName 변수에 어떤 값이 저장되어 있는지 확인하십시오. 구문은 다음과 같습니다.
SELECT @anyVariableName;
이름이 'Sp_SQRT'인 저장 프로시저를 만들었습니다. 저장 프로시저를 호출하는 쿼리는 다음과 같습니다.
mysql> call Sp_SQRT(36,@MySquareRootNumber); Query OK, 0 rows affected (0.02 sec)
select 문을 사용하여 @MySquareRootNumber 변수 값 확인
mysql> select @MySquareRootNumber;
다음은 출력입니다.
+---------------------+ | @MySquareRootNumber | +---------------------+ | 6 | +---------------------+ 1 row in set (0.00 sec)