Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ประกาศตัวแปรภายใน Stored Procedure ใน MySQL ด้วย DECLARE

ใช้ DECLARE ประกาศตัวแปรภายใน BEGIN ... END ของ Stored Procedure

mysql> DELIMITER //
mysql> CREATE PROCEDURE DECLARE_VARIABLE_DEMO(IN value INT)
    -> BEGIN
    ->   DECLARE searchValue INT;
    ->   SET searchValue = value;
    ->   IF searchValue = 10 THEN
    ->     SELECT searchValue + 100;
    ->   ELSE
    ->     SELECT searchValue;
    ->   END IF;
    -> END
    -> //
Query OK, 0 rows affected (0.17 sec)
mysql> DELIMITER ;

เรียก Procedure พร้อมส่งค่า 10:

mysql> CALL DECLARE_VARIABLE_DEMO(10);
+-----------------+
| searchValue+100 |
+-----------------+
|             110 |
+-----------------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.02 sec)

กฎ DECLARE: ต้องอยู่บนสุดของ BEGIN block ก่อนคำสั่งอื่น ตัวแปรมี Scope เฉพาะใน Procedure นั้น