mysql存储过程中的 in , out , inout

Posted 步行者811

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql存储过程中的 in , out , inout相关的知识,希望对你有一定的参考价值。

在存储过程中传参分 in out inout 三种

in 可以输出从外部传入的变量 不会改变传进变量本来的值     从外部传入的变量,这个参数是不会变的

create procedure a(in id int)
begin
    select id;
    set id = 100;
end
$
set @id=1$
call a(@id)$  //输出1 即从外部传进来的@id 的值

select $id$  //输出1 说明存储过程中没有改变传进的值

 

out 不能输出从外部传进的值  会改变传进变量本来的值

create procedure b(out id int)
begin
    select id;
    set id = 100;
end
$
set @id=1$
call b(@id)$   //输入null    因为是从外部传进来的值,所以为  null

select @id$  //输出100     不是外部传进来,是存储过程里面定义的,所以可以输出

 

inout 就是又能输出传入变量又能改变传入变量咯 

 

































以上是关于mysql存储过程中的 in , out , inout的主要内容,如果未能解决你的问题,请参考以下文章

mysql中存储过程

MySQL---存储过程复习

MySQL 存储过程传参之in, out, inout 参数用法

MySQL-进阶18 存储过程- 创建语句-参数模式(in/out/inout-对应三个例子) -调用语法-delimiter 结束标记'$'

mysql存储过程 in out inout

mysql存储过程的-创建(in,out,inout)-删除-查看