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 <過程名>;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章