如何创建带有 INOUT 参数的 MySQL 存储过程?


以下示例演示了带有 INOUT 参数的 MySQL 存储过程 −

mysql> DELIMITER // ;
mysql> Create PROCEDURE counter(INOUT count INT, IN increment INT)
    -> BEGIN
    -> SET count = count + increment;
    -> END //
Query OK, 0 rows affected (0.03 sec)

此处,“count” 是 INOUT 参数,它可以存储和返回值,“increment” 是 IN 参数,它接受用户的值。

mysql> DELIMITER ;
mysql> SET @counter = 0;
Query OK, 0 rows affected (0.00 sec)

mysql> CALL counter(@Counter, 1);
Query OK, 0 rows affected (0.00 sec)

mysql> Select @Counter;
+----------+
| @Counter |
+----------+
| 1        |
+----------+
1 row in set (0.00 sec)

mysql> CALL counter(@Counter, 5);
Query OK, 0 rows affected (0.00 sec)

mysql> Select @Counter;
+----------+
| @Counter |
+----------+
| 6        |
+----------+
1 row in set (0.00 sec)

更新时间:22-6 月-2020

1K+ 次阅读

启动您的 职业生涯

完成课程获取认证

开始
广告