MySQL 存储过程:输出参数?


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

更新于:2019 年 7 月 30 日

815 次浏览

开启你的 职业

完成课程获取认证

开始
广告