創建存儲過程
MySQL中,創建存儲過程的基本形式如下:
delimiter $$;
CREATE PROCEDURE 名稱(參數列表)
BEGIN
SQL語句塊
End
$$;
delimiter;
存儲過程中變量的定義
變量定義:
–declare 變量名 數據類型 default 默認值
存儲過程定義變量實例
delimiter $$;
create procedure test_p5(id int,phone int) #傳參兩個
begin
declare s_name varchar(12); #定義一個變量,沒有默認值
declare sex varchar(10) default '男'; #定義變量賦默認值
set id = id+1;
set s_name = '安大叔'; #變量復制
insert into students values (id,s_name,phone,sex);
end
$$;
delimiter;
存儲過程中的while循環
•while是一種循環的語句,我們經常使用while來造數據
•while語句格式:
–while 條件 do
–sql語句
–end while;
while循環實例
delimiter $$;
create procedure test_p15(count int)
begin
declare name varchar(20);
declare phone int(20);
declare i int;
set i = 0;
REPEAT
set name=CONCAT('測試',i);
insert into student(Name,Sex,age,class,Addr)
values('name','男',i,'索隆','遼寧省阜新市'); //sql插入語句
set i=i+1;
until i>count
end REPEAT;
end
$$;
delimiter;
存儲過程中的repeat循環
•repeat和while一樣,也是一種循環的語句,和while不一樣的事,repeat循環至少會執行一次。
•repeat語句格式:
–repeat
–sql語句
–until 條件
–end repeat;
repeat循環實例
delimiter $$;
create procedure test_p11(count int)
begin
declare name varchar(20);
declare phone int(20);
declare i int;
set i = 0;
while i<count do
set name=CONCAT('計算機',i);
insert into Score(Stu_id,C_name,Grade)values(i,name,i); //sql插入語句
set i=i+1;
end while;
end
$$;
delimiter;
存儲函數進行創建后 運行call test_p11(500),即可創建批量數據