mysql存儲過程

#第1個存儲過程,體會"封裝sql"
delimiter $
drop procedure if exists p1;$ #刪除存儲過程
create procedure p1()#創建存儲過程
begin
select * from rooms;
end;$
call p1();$#調用存儲過程
#第2個存儲過程,體會"參數"
delimiter $
drop procedure if exists p2;$
create procedure p2(n bigint(20))
begin
select * from rooms where id>n;
end;$
call p2(10050);$
#第3個存儲過程,體會“控制結構”
delimiter $
drop procedure if exists p3;$
create procedure p3(n bigint(20),j char(1))
begin
if j='h' then #存儲過程的If判斷語句
select * from rooms where id>n;
else
select * from rooms where id<n;
end if;#這裏必須要用end if結束
end;$
call p3(10050,'h');$
call p3(10050,'d');$
#第4個儲存過程,體會"循環語句" (計算1-n的和)
delimiter $
drop procedure if exists p4;$
create procedure p4(n smallint)
begin
declare i int;#存儲過程定義變量
declare s int;
set i=1;#存儲過程給變量初始值
set s=0;
while i<=n do
set s=s+i; #這裏存儲過程賦值也必須要用set,不能用+=
set i=i+1;
end while;#這裏循環也必須要用end結束
select s;
end;$
call p4(200);$

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章