这是一个存储过程,它采用一个参数作为输入 (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)