create procedure 存储名(参数模式 参数 参数类型)
begin
存储体
end
参数模式分3中
in 参数可以输出
out 参数可以返回
inout 参数可以输出和返回
delimiter 结束标记
调用
call 储存名()结束标记
案例 创建储存过程实现 根据女神名,查询对应男友信息
delimiter $
create procedure mys1(in name varchar(20))
begin
select * from boys bo
right join beauty b
on b.boyfriend_id = bo.id
where b.name = name ;
end $
案例2根据女生名,返回多个男神名.
CREATE PROCEDURE mys5(IN NAME VARCHAR(20),OUT boyname VARCHAR(20))
BEGIN
SELECT
bo.boyName INTO boyname
FROM
boys bo
INNER JOIN
beauty b
ON
b.boyfriend_id = bo.id
WHERE
b.name = NAME ;
END $
call mys5('周芷若',@xxx)$
select @xxx;
案例3 输入a和b 输出a和b的倍数
create procedure mys10(inout a int ,inout b int)
begin
set a = a*2;
set b= b*2;
end $
声明 a和b的值
set @m =10 ;
set @n=20;
call mys10(@m,@n)$
删除存储的语法
drop procedure 存储名
查看存储过程
show create procedure 存储名.