概念類似於函數,就是把一段代碼封裝起來。當要行這段代碼的時候,可以通過調用該存儲過程來實現。在封裝的語句體裡面,可以用if/else,case,while等控制語句可以進行sql編程
2.1、查看現有的存儲過程


2.2創建存儲過程
a、無參數的存儲過程
delimiter //
create procedure p1()
begin
select count(*) from goods;
end //
調用存儲過程p1()

b、帶參數的存儲過程(參數用於保存運行結果)
delimiter //
create procedure p2(out a int)
begin
select count(*) into a from goods;
end //
delimiter ;
調用存儲過程p2

(備注: 定義變量a來保持存儲過程p2的結果,然後再顯示變量a的值)
c、帶參數的存儲過程(參數用於運行)
delimiter //
create procedure p3(in a int)
begin
select goods_id,goods_name,shop_price from goods where goods_id=a;
end //
delimiter ;
調用存儲過程p3

d、帶有if/else的存儲過程

調用

e、帶有while的存儲過程

2.3、刪除存儲過程

總結: 在mysql中,存儲過程和函數的區別
a、名稱不同
b、存儲過程沒有返回值