mysql數據庫之存儲過程


存儲過程(Stored Procedure)是在大型數據庫系統中,一組為了完成特定功能的SQL 語句集,存儲在數據庫中,經過第一次編譯后調用不需要再次編譯,用戶通過指定存儲過程的名字並給出參數(如果該存儲過程帶有參數)來執行它。存儲過程是數據庫中的一個重要對象。

存儲過程大體語法結構:

delimiter //表示用//結束存儲過程的聲明,因為mysql默認是以分號;作為語句結束的

create procedure procedurename(in myname varchar(20),out myid int,inout sex char)存儲過程包含三個參數,分別是in,out,inout分別對應輸入,輸出,輸入輸出參數

begin表示存儲過程的開始

declare i.....表示聲明變量,就像int i=0一樣,不過存儲過程是反過來的,例如聲明一個默認值為0的int型變量   declare i int default 0;

set 賦值語句.....表示賦值語句,例如將i賦值為1  set i=1;

sql語句......這里就是編寫你要操作的sql語句了,簡單查詢,多表,子查詢,都是在這里寫

if ...then .....[else if ..then... ] else ....end if;條件控制語句,if....else

while do..表示while條件循環,while  表達式  do  執行語句  end while;

loop....有點類似於continue,結束此次循環跳轉到開頭重新執行下一次,標簽名稱:loop   執行語句  end loop 標簽名稱; 

end

//

整個存儲過程大體結構如上,這是最基本的,還有更復雜的....

調用存儲過程:

set @myname='jason';表示的是設置這個變量,格式就是這樣的。。。

set @myid=1;

set @sex='男';

call procedurename(@myname,@myid,@sex);

刪除存儲過程:

drop procedure procedurename;

整個存儲過程從創建到刪除,大體流程就是這樣的


免責聲明!

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



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