- 本博客是《MySQL基础》系列博客的第十三部分,简单介绍MySQL中的存储过程,包括其创建、调用、删除等
- 本博客既为方便自己查看复习而作,亦为你而作,望能有所裨益
- 学习交流请联系 April_0911@163.com
基本概念
存储过程是为完成特定功能的SQL语句的集合,经过编译保存在数据库中,并通过其名称进行调用,从而快速方便地实现某功能。
示例应用
问题
假设我们现在要求一下 1 + 2 + 3 + ⋅ ⋅ ⋅ + n 1+2+3+···+n 1+2+3+⋅⋅⋅+n的和,该如何编写这个存储过程呢?
创建
- 每个数据库都有放置存储过程的地方,下图即为workbench中sakila数据库的存储过程所放置的地方。
- 右键创建一个新的存储过程,编写完相应的SQL语句后点击Apply即可。
CREATE PROCEDURE `sumtest` (in n int,out s int)
BEGIN
declare i int;
declare sum int;
-- 声明变量名及数据类型
set i = 1;
set sum = 0;
-- 设置初始值
while i <= n do
set sum = sum + i;
set i = i + 1;
end while;
-- 循环体,当i>n时结束循环
select sum into s;
END
调用
call sumtest(9,@sum); -- 输入值n=9,输出值s保存在sum变量中
select @sum; -- 查询输出值
删除
drop procedure <过程名>;