SQL存储的过程2_MySQL
程序员文章站
2022-04-06 12:25:10
...
bitsCN.com
摘自 宋利兴的专栏 bitsCN.com
(3)、
1、变量定义
局部变量声明一定要放在存储过程体的开始
DECLARE variable_name [,variable_name...] datatype [DEFAULT value];其中,datatype为MySQL的数据类型,
如:int, float, date, varchar(length)
2、变量赋值
SET 变量名 = 表达式值 [,variable_name = expression ...]
3、用户变量
1)、在MySQL客户端使用用户变量
示例:mysql>select 'Hello World' into @x;
mysql > select @x;
2)、在存储过程中使用用户变量
示例:mysql > CREATE PROCEDURE GreetWorld( ) SELECT CONCAT(@greeting, 'World');
mysql > SET @greeting='Hello';
mysql > CALL GreetWorld( );
3)、在存储过程间传递全局范围的用户变量
示例:
mysql>
create procedure p1() set @last_procedure='p1';
mysql>create procedure p2() select concat('Last procedure was',@last_procedure);
mysql>call p1();
mysql>call p2( );
注意:
①用户变量名一般以@开头
②滥用用户变量会导致程序难以理解及管理
摘自 宋利兴的专栏 bitsCN.com