mysql存储过程

delimiter // (把结束符由 ;改为 //)
create procedure proc1( in s int) (创建一个存储过程)
begin (存储过程开始)
select s;
set s=2;
select s;
end (结束)
delimiter ;

set @s = 1;
call proc1(@s); (调用存储过程,并将s传入存储过程中调用)
(至此,调用存储过程,执行从begin 到 end 之间的语句。)

in:参数能传入,但不传出;上例中变量s的值 仍旧为1
out:不能传入,只传出;将上例的in 改为out后,执行完成后s的值为2,在存储过程中第一次查询s的值为null。
inout:能传入,也能传出。

局部变量:
declare 变量名 变量类型 default 默认值;
注意局部变量只能放在存储过程的开始。

你可能感兴趣的:(mysql存储过程)