Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

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)