5.MYSQL 存储过程

16 篇文章 0 订阅
本文介绍了MySQL中存储过程的创建、调用,包括变量声明、会话和全局变量,以及if...else、in/out参数和case语句的使用。详细展示了如何处理数据和控制流程。
摘要由CSDN通过智能技术生成

就是编程语言中的函数

创建存储过程

-- 创建存储过程
create procedure p1()
begin    select count(*) from student;
end;-- 
调用
call p1();
-- 查看存储过程
select * from information_schema.ROUTINES where ROUTINE_SCHEMA = 'ithe';show create procedure p1;
-- 删除存储过程
drop procedure if exists p1;

变量

查看系统变量 session会话级别的变量
show session  variables like 'auto%';
查看全局变量 global全局级别的变量
show global variables like  'auto%';
-- 查询具体的系统变量
select @@autocommit;
-- 修改会话环境变量
set session autocommit =0;

每次重启都会重置环境变量

局部变量        

create procedure p2()
begin  
  declare stu_count int default 0; -- 变量    
  select count(*) into stu_count from student;  
  select stu_count;
end;call p2();
语法:if
if 条件 then
elseif 条件2 then
.........
else

end if
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;
call p4(90,@result); -- 输入传入参数和输出传出参数
select @result;

in 是传入的参数
out 是传出的参数
后面的是参数类型



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

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

case语法

累加传入的数

先判断在执行

先执行在判断

执行查看由于一直循环搜易

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值