Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để tạo thủ tục lưu trữ MySQL với tham số INOUT?


Ví dụ sau sẽ trình bày quy trình lưu trữ MySQL với INOUT tham số -

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)

Ở đây, "count" là tham số INOUT, có thể lưu trữ và trả về các giá trị và "increment" là tham số IN, chấp nhận các giá trị từ người dùng.

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)