MySQL基础(十三):存储过程

  • 本博客是《MySQL基础》系列博客的第十三部分,简单介绍MySQL中的存储过程,包括其创建、调用、删除等
  • 本博客既为方便自己查看复习而作,亦为你而作,望能有所裨益
  • 学习交流请联系 [email protected]

基本概念

存储过程是为完成特定功能的SQL语句的集合,经过编译保存在数据库中,并通过其名称进行调用,从而快速方便地实现某功能。

示例应用

问题


假设我们现在要求一下1+2+3++n1+2+3+···+n的和,该如何编写这个存储过程呢?


创建

  1. 每个数据库都有放置存储过程的地方,下图即为workbench中sakila数据库的存储过程所放置的地方。
    在这里插入图片描述
  2. 右键创建一个新的存储过程,编写完相应的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 <过程名>;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章