MySQL存储过程(三)——存储过程分支流控语句

今天继续给大家介绍MySQL相关知识,本文主要内容是MySQL存储过程的流程控制语句。
阅读本文,您需要有一定的MySQL存储过程基础,如果您对此还存在困惑,欢迎查阅以下文章:
MySQL存储过程(一)——存储过程理论基础
MySQL存储过程(二)——存储过程基本使用

一、分支流控语句简介

在之前的文章中,我们介绍了MySQL存储过程的定义、用途和基本使用。今天,我们就来简单讲解一下MySQL存储过程的流控语句。
存储过程存在分支和循环的流程控制语句,在引入了流控语句后,可以使得MySQL存储过程SQL语句的编写更加灵活,使得MySQL存储过程可以实现更多复杂的功能。MySQL存储过程的条件语句包含if分支语句和case分支语句,两者都可以根据指定的条件影响程序的走向。下面,我们就来简单介绍一下MySQL存储过程的if和case分支流控语句。

二、if分支语句

如果是采用if分支语句,则其语法结构为:

if 【条件】 then
【语句1else
【语句2end if;

SQL语句示例如下:

create procedure if_exp(in s_id int , in name_or_major int , in name_major varchar(20))
begin
if name_or_major=1 then
update student set name=name_major where id=s_id;
end if;
if name_or_major=2 then
update student set major=name_major where id=s_id;
end if;
end //

执行结果如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、case分支语句

如果是采用case语句,则其语法结构为:

case 【变量】
when 【值1then
【语句1when 【值2then
【语句2】
……
end case;

case分支存储过程SQL语句示例如下:

create procedure case_exp(in s_id int , in name_or_major int , in name_major varchar(30))
begin
case name_or_major
when 1 then 
update student set name=name_major where id=s_id;
when 2 then 
update student set name=name_major where id=s_id;
end case;
end //

执行结果如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值