mysql中 建立儲存過程
1、定義IF迴圈以及呼叫書寫格式
DELIMITER $
-> create procedure pro_IF(IN num INT,OUT str varchar(30))
-> BEGIN
-> IF num= 1 THEN
-> SET str='星期一';
-> ELSE SET str ='輸入錯誤';
-> END IF;
-> END$
呼叫---------> call pro_IF(10 , @s1) //呼叫call給s1返回一個結果,賦值給s1,如果輸入完改命令命令列沒結束,輸入$結束
檢視結果----------> select @s1 //列印結果 ‘輸入錯誤’ 如果輸入完改命令命令列沒結束,輸入$結束
如果call呼叫方法報錯得話,應該在執行這句話前面先定義一個s1即可,演示如下
一set @s1 =' ';
二call pro_IF(10 , @s1)
三select @s1
2、while迴圈以及呼叫書寫格式
delimiter $
create procedure pro_while(IN num int,OUT result int)
-> begin
-> declare i int default 1;
-> declare sum int default 0;
-> while i < num DO
-> SET sum = sum +i;
-> SET i=i+1;
-> end while;
-> set result = sum;
-> end $;
呼叫 call procedure pro_while(10,@ss);
$
select @ss;
$
跟if一樣,如果呼叫得時候報引數錯誤,應該先定義,用set初始化一個值,賦予空 '空格' ;