Inner variable shadows the outter variable : Variable Scope : Procedure Function MySQL TUTORIALS


MySQL TUTORIALS » Procedure Function » Variable Scope »

 

Inner variable shadows the outter variable


mysql>
mysql> delimiter $$
mysql>
mysql> CREATE PROCEDURE myProc()
    -> BEGIN
    ->         DECLARE my_variable VARCHAR(20);
    ->         SET my_variable='This value was set in the outer block';
    ->         BEGIN
    ->                 DECLARE my_variable VARCHAR(20);
    ->                 SET my_variable='This value was set in the inner block';
    ->         END;
    ->         SELECT my_variable, 'Can''t see changes made in the inner block';
    -> END$$
Query OK, rows affected (0.00 sec)

mysql>
mysql> delimiter ;
mysql> call myProc();
+----------------------+-------------------------------------------+
| my_variable          | Can't see changes made in the inner block |
+----------------------+-------------------------------------------+
| This value was set i | Can't see changes made in the inner block |
+----------------------+-------------------------------------------+
row in set (0.00 sec)

Query OK, rows affected, warnings (0.00 sec)

mysql> drop procedure myProc;
Query OK, rows affected (0.00 sec)

mysql>
mysql>



Leave a Comment / Note


 
Verification is used to prevent unwanted posts (spam). .

Follow Navioo On Twitter

MySQL TUTORIALS

 Navioo Procedure Function
» Variable Scope