51.进阶-存储过程-参数(IN、OUT、INOUT)

51.进阶-存储过程-参数(IN、OUT、INOUT)

1). 介绍

参数的类型,主要分为以下三种:IN、OUT、INOUT。 具体的含义如下:

类型含义备注
IN该类参数作为输入,也就是需要调用时传入值默认
OUT该类参数作为输出,也就是该参数可以作为返回值
INOUT既可以作为输入参数,也可以作为输出参数

用法:

CREATE PROCEDURE 存储过程名称 ([ IN/OUT/INOUT 参数名 参数类型 ])
BEGIN
    -- SQL语句
END ;

2). 案例一

根据传入参数score,判定当前分数对应的分数等级,并返回。

score >= 85分,等级为优秀。

score >= 60分 且 score < 85分,等级为及格。

score < 60分,等级为不及格。

create procedure p4(in score int, out result varchar(10))
begin
    if score >= 85 then
    set result := '优秀';
    elseif score >= 60 then
    set result := '及格';
    else
    set result := '不及格';
end if;
end;

-- 定义用户变量 @result来接收返回的数据, 用户变量可以不用声明
call p4(18, @result);
select @result;

3). 案例二

传入的200分制的分数,进行换算,换算成百分制,然后返回

create procedure p5(inout score double)
begin
    set score := score * 0.5;
end;

set @score = 198;

call p5(@score);

select @score;
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值