mysql使用存儲函數批量添加數據


創建存儲過程

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),即可創建批量數據


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM