亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > MySQL > 正文

mysql數據存儲過程參數實例詳解

2024-07-24 13:14:49
字體:
來源:轉載
供稿:網友

MySQL 存儲過程參數有三種類型:in、out、inout。它們各有什么作用和特點呢?

一、MySQL 存儲過程參數(in)

MySQL 存儲過程 “in” 參數:跟 C 語言的函數參數的值傳遞類似, MySQL 存儲過程內部可能會修改此參數,但對 in 類型參數的修改,對調用者(caller)來說是不可見的(not visible)。

drop procedure if exists pr_param_in;create procedure pr_param_in(  in id int -- in 類型的 MySQL 存儲過程參數)begin  if (id is not null) then   set id = id + 1;  end if;  select id as id_inner;end;
set @id = 10;call pr_param_in(@id);select @id as id_out;
mysql> call pr_param_in(@id);+----------+| id_inner |+----------+|    11 |+----------+mysql> select @id as id_out;+--------+| id_out |+--------+| 10   |+--------+

可以看到:用戶變量 @id 傳入值為 10,執行存儲過程后,在過程內部值為:11(id_inner),但外部變量值依舊為:10(id_out)。

二、MySQL 存儲過程參數(out)

MySQL 存儲過程 “out” 參數:從存儲過程內部傳值給調用者。在存儲過程內部,該參數初始值為 null,無論調用者是否給存儲過程參數設置值。

drop procedure if exists pr_param_out;create procedure pr_param_out(  out id int)begin  select id as id_inner_1; -- id 初始值為 null  if (id is not null) then   set id = id + 1;   select id as id_inner_2;  else   select 1 into id;  end if;  select id as id_inner_3;end;
set @id = 10;call pr_param_out(@id);select @id as id_out;
mysql> set @id = 10;mysql>mysql> call pr_param_out(@id);+------------+| id_inner_1 |+------------+|    NULL |+------------++------------+| id_inner_3 |+------------+|     1 |+------------+mysql> select @id as id_out;+--------+| id_out |+--------+| 1   |+--------+

可以看出,雖然我們設置了用戶定義變量 @id 為 10,傳遞 @id 給存儲過程后,在存儲過程內部,id 的初始值總是 null(id_inner_1)。最后 id 值(id_out = 1)傳回給調用者。

三、MySQL 存儲過程參數(inout)

MySQL 存儲過程 inout 參數跟 out 類似,都可以從存儲過程內部傳值給調用者。不同的是:調用者還可以通過 inout 參數傳遞值給存儲過程。

drop procedure if exists pr_param_inout;create procedure pr_param_inout(  inout id int)begin  select id as id_inner_1; -- id 值為調用者傳進來的值  if (id is not null) then   set id = id + 1;   select id as id_inner_2;  else   select 1 into id;  end if;  select id as id_inner_3;end;
set @id = 10;call pr_param_inout(@id);select @id as id_out;
mysql> set @id = 10;mysql>mysql> call pr_param_inout(@id);+------------+| id_inner_1 |+------------+|     10 |+------------++------------+| id_inner_2 |+------------+|     11 |+------------++------------+| id_inner_3 |+------------+|     11 |+------------+mysql>mysql> select @id as id_out;+--------+| id_out |+--------+| 11   |+--------+

從結果可以看出:我們把 @id(10),傳給存儲過程后,存儲過程最后又把計算結果值 11(id_inner_3)傳回給調用者。 MySQL 存儲過程 inout 參數的行為跟 C 語言函數中的引用傳值類似。

通過以上例子:如果僅僅想把數據傳給 MySQL 存儲過程,那就使用“in” 類型參數;如果僅僅從 MySQL 存儲過程返回值,那就使用“out” 類型參數;如果需要把數據傳給 MySQL 存儲過程,還要經過一些計算后再傳回給我們,此時,要使用“inout” 類型參數。

總結

以上就是本文關于mysql數據存儲過程參數實例詳解的全部內容,希望對大家了解MySQL有所幫助。有什么問題可以隨時留言,小編會及時回復大家的。感謝朋友們對本站的支持!


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人国产精品久久久久久亚洲| 日韩欧美视频一区二区三区| 91国在线精品国内播放| 亚洲国产精品人久久电影| 欧美激情影音先锋| 欧美日韩综合视频| 中文字幕少妇一区二区三区| 久久久久久久一区二区三区| 欧美巨猛xxxx猛交黑人97人| 久久国产精品免费视频| 亚洲视频axxx| 欧美福利视频网站| 欧美午夜精品久久久久久浪潮| 日韩精品福利网站| 久久精品久久精品亚洲人| 亚洲大胆人体av| 欧美劲爆第一页| 亚洲成人久久一区| 欧美另类精品xxxx孕妇| 国产精品视频999| 97精品伊人久久久大香线蕉| 91在线色戒在线| 午夜精品久久久久久99热| 亚洲理论电影网| 日韩有码在线观看| 久久久久久久久久久亚洲| 激情懂色av一区av二区av| 69av视频在线播放| 成人美女免费网站视频| 欧美成人一二三| 91精品久久久久久久久久久| 欧美视频精品一区| 一本一本久久a久久精品牛牛影视| 亚洲男人天堂手机在线| 97视频在线观看亚洲| 国产a∨精品一区二区三区不卡| 久久99精品久久久久久噜噜| 久久影视电视剧免费网站| 91久久久久久久久久久| 91久久夜色精品国产网站| 日韩激情片免费| 国产欧美在线看| 91综合免费在线| 色综合影院在线| 久久综合伊人77777蜜臀| 日韩美女在线观看| 在线播放日韩欧美| 秋霞av国产精品一区| 欧美另类在线观看| 97成人精品区在线播放| 97久久精品人搡人人玩| 在线观看亚洲视频| 精品欧美一区二区三区| 久久久久久国产精品美女| 欧美丰满片xxx777| 欧美电影电视剧在线观看| 中文字幕日韩综合av| 国产免费亚洲高清| 欧美专区日韩视频| 亚洲第一黄色网| 国产精品美女网站| 国产精品久久久久久久久免费看| 美女少妇精品视频| 国产欧美一区二区三区久久人妖| 国产精品人成电影| 久久影视免费观看| 97视频免费在线看| 亚洲成人av片在线观看| 国产亚洲欧洲高清一区| 欧美高清电影在线看| 国产欧美日韩丝袜精品一区| 午夜剧场成人观在线视频免费观看| 欧美日韩一区二区在线播放| 日韩va亚洲va欧洲va国产| 亚洲级视频在线观看免费1级| 久久久av电影| 日韩电影中文字幕| 亚洲一区制服诱惑| 欧美国产日韩一区| 欧美裸身视频免费观看| 久久成人精品一区二区三区| 欧美日韩国产综合视频在线观看中文| 亚洲美女免费精品视频在线观看| 国产日韩精品一区二区| 精品美女国产在线| 日韩暖暖在线视频| 亚洲xxx自由成熟| 国产视频亚洲视频| 日本欧美国产在线| 成人中文字幕在线观看| 亚洲综合精品伊人久久| 成人精品在线观看| 精品亚洲永久免费精品| 色婷婷综合久久久久中文字幕1| 日韩麻豆第一页| 欧美成人精品在线播放| 亚洲黄页视频免费观看| 精品国产老师黑色丝袜高跟鞋| 欧美激情亚洲精品| 草民午夜欧美限制a级福利片| 精品国产91久久久久久| 久久人人爽人人爽爽久久| 久久久中文字幕| 亚洲视频在线观看免费| 欧美最近摘花xxxx摘花| 亚洲欧洲在线视频| 7777免费精品视频| 国产91网红主播在线观看| 精品女厕一区二区三区| 日日骚久久av| 在线免费观看羞羞视频一区二区| 欧美午夜激情视频| 亚洲精品成a人在线观看| 色综合91久久精品中文字幕| 777精品视频| 91丝袜美腿美女视频网站| 精品久久久国产| 亚洲成年人在线播放| 26uuu亚洲国产精品| 亚洲一区二区三区777| 亚洲精品456在线播放狼人| 欧美整片在线观看| 国产亚洲激情在线| 久久免费视频在线观看| 中文字幕在线成人| 欧美孕妇与黑人孕交| 久热在线中文字幕色999舞| 91精品国产91久久久| 国产亚洲精品一区二区| 国产精品久久久久久久久男| 久久成人人人人精品欧| 亚洲精品短视频| 色综合91久久精品中文字幕| 中文字幕久热精品视频在线| 欧美理论电影在线观看| 国产一区二区三区中文| 97久久超碰福利国产精品…| 浅井舞香一区二区| 欧美成人在线免费视频| 色偷偷av亚洲男人的天堂| 亚洲精品日韩av| 欧美视频免费在线观看| 久久的精品视频| 国产精品专区第二| 亚洲aⅴ男人的天堂在线观看| 色琪琪综合男人的天堂aⅴ视频| 国产成人综合精品在线| 国产成人精品av在线| 日本19禁啪啪免费观看www| 日韩免费在线免费观看| 欧美性xxxxx极品| 日本伊人精品一区二区三区介绍| 欧美日韩国产一区二区三区| 欧美整片在线观看| 亚洲精品中文字幕有码专区| 久久精品99无色码中文字幕| 久久伊人精品视频| 国产精品偷伦免费视频观看的| 成人在线中文字幕| 亚洲免费成人av电影| 亚洲xxxxx性| 国产精品久久久久久久久久99| 久久免费视频在线观看| 欧美大片在线看|