mysql存储过程与函数样例

1、存储过程

delimiter //
drop procedure if exists test;
create procedure test(in p_in int,out p_out int,inout p_inout int)
begin
select p_in,p_out,p_inout;
set p_in = 1;
set p_out = 2;
set p_inout = 3;
select p_in,p_out,p_inout;
end
//
delimiter ;
set @p_in = 0;
set @p_out = 0;
set @p_inout = 0;
call test(@p_in,@p_out,@p_inout);
select @p_in,@p_out,@p_inout;

执行结果如下


image.png

out参数不受传入值的影响,所有out参数一开始均为空


image.png

image.png

in参数不会因为内部改变其值而改变

2、函数
PS:函数没有 in out inout参数的说法。

delimiter //
drop FUNCTION if exists testfun;
CREATE FUNCTION  testfun(a int,b int) RETURNS int
begin
return a+b;
end
//
delimiter ;
select testfun(1,2);
image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容