欢迎来到LYBLaoInB的博客
LYBLaoInB
LYBLaoInB
回首往事,不因虚度年华而悔恨,不因碌碌无为而愧疚

存储过程的参数

传入参数

举个栗子:根据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后加上来自地球这样的字符串。当然,一般存储过程中可以做更多操作。

 

posted @ 2019-06-11 12:41  LiuYongbo  阅读(5631)  评论(0)    收藏  举报
<--将网易云歌单中的id复制到上面的data-id中就可以了 http://music.163.com/playlist?id=3103841025&userid=1698529278 -->