码迷,mamicode.com
首页 > 数据库 > 详细

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

时间:2017-10-09 18:40:30      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:传参   mysql存储   说明   存储   又能   out   begin   in out   span   

在存储过程中传参分 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存储   说明   存储   又能   out   begin   in out   span   

原文地址:http://www.cnblogs.com/linqiuhua/p/7642075.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!