存儲過程的參數


傳入參數

舉個栗子:根據id查name  參數:myid,定義方式和java中的函數類似,in 變量名 變量類型;

CREATE  PROCEDURE teste(in myid int)
BEGIN
declare myname VARCHAR(10) default '';
select pname into myname from person where pid =myid;
select myname;
end

調用的時候直接call teste(2);

 

傳出參數  out 變量名 類型

CREATE  PROCEDURE teste(in myid int,out myname varchar(10))
BEGIN
select pname into myname from person where pid =myid;
end

調用,當需要傳入參數的時候,需要先設置傳入參數,可以初始化一下,用於接收返回值。並且作為參數給函數使用

set @pname := '';
call teste(2,@pname);
select @pname;

 

還有一些參數又是傳入,還是傳出參數,用inout定義

CREATE  PROCEDURE `teste`(inout myname varchar(10))
BEGIN
select CONCAT((select pname from person where pname = myname),"_來自地球") into myname;
end

調用如下:

將能查到的name后加上來自地球這樣的字符串。當然,一般存儲過程中可以做更多操作。

 


免責聲明!

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



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