您好,登錄后才能下訂單哦!
這篇文章主要介紹數據庫mysql存儲中入參出參的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1.入參出參
語法: in|out|inout 參數名 數據類型 , ...
in 定義出參; out 定義入參; inout 定義出參和入參。
2.出參in
使用出參in時,就是需要我們傳入參數,在這里可以對參入的參數加以改變。簡單來說in只負責傳入參數到存儲過程中,類似Java中的形參。
delimiter // create procedure val_in(in val_name varchar(32)) begin # 使用用戶變量出參(為用戶變量賦參數值) set @val_name1 = val_name; end // # 調用函數 call val_in('DK') // # 查詢該用戶變量 select @val_name1 //
3.入參out
在使用out時,需要傳入一個參數。而這個參數相當于是返回值,可以通過調用、接收來獲取這個參數的內容。簡單來說out只負責作返回值。
delimiter // # 創建一個入參和出參的存儲過程 create procedure val_out(in val_id int,out val_name varchar(32)) begin # 傳入參數val_id查詢員工返回name值(查詢出的name值用出參接收并返回) select name into val_name from employee where id = val_id; end // # 調用函數傳入參數并聲明傳入一個用戶變量 call val_out(1, @n) // # 查詢用戶變量 select @n //
4.入參出參inout
inout關鍵字,就是把in和out合并成了一個關鍵字使用。被關鍵字修飾的參數既可以出參也可以入參。
delimiter // create procedure val_inout(in val_name varchar(32), inout val_age int) begin # 聲明一個a變量 declare a int; # 將傳入的參數賦值給a變量 set a = val_age; # 通過name查詢age并返回val_age select age into val_age from employee where name = val_name; # 將傳入的a與-和查詢age結果字符串做拼接并查詢出來(concat——拼接字符串) select concat(a, '-', val_age); end // # 聲明一個用戶變量并賦予參數為40 set @ages = '40' // # 調用函數并傳入參數值 call val_inout('Ziph', @ages) // # 執行結果 # 40-18
以上是“數據庫mysql存儲中入參出參的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。