当前课程知识点:MySQL数据库案例教程 > 第5章 高级操作 > 5.2 流程控制语句 > 5-2流程控制语句视频
同学们好
我们今天继续学习第五章的内容
流程控制语句
我们首先介绍流程控制语句的概念
然后对其语法进行讲解
最后是案例分析与实践操作
SQL作为结构化的查询语句
不仅仅是为了完成简单的查询而设计的
通过本章前面内容的学习
我们知道SQL可以实现复杂的查询
或者计算过程
作为一种程序设计语言
SQL同样可以实现流程控制
在创建存储过程或自定义函数时
可以使用流程控制语句
来实现一个比较复杂的功能
常用的流程控制语句有
IF语句、CASE语句、LOOP语句
REPEAT、 WHILE
LEAVE、ITERATE 等等
下面我们将对这些语句进行逐个讲解
IF语句用来进行条件判断
根据不同的条件执行不同的操作
该语句在执行时首先判断
IF后的条件是否为真
如果为真则执行THEN后的语句
如果为假则继续判断直到为真
当以上条件都不满足时
则执行ELSE语句后的内容
我们可以看一下IF语句的表示形式
下面我们来通过一个案例
来讲解IF语句的实用
案例一
根据输入的学号查询其大学英语成绩
要求成绩>=60的时候输出“及格”
成绩<60时候输出“不及格”
我们通过分析知道这是一个自定义的函数
函数体内需要查询成绩并对成绩进行判断
使用IF语句
下面我们来看具体操作
CASE语句做为多分支语句结构
该语句首先从WHEN后的VALUE中
查找与CASE后的变量相等的值
如果查到那么就执行该分支的内容
如果不相等则执行ELSE后的内容
CASE语句表示形式我们可以看一下
下面来通过一个案例
来讲解CASE语句的使用
案例二
根据输入的编号完成相应的功能
当输入为“1”的时候
向course表中插入一行数据
当输入为“2”时候
向course表中插入第二行数据;
当输入为“3”的时候
将刚刚添加的数据全部删除
通过分析我们知道
这是一个带有IN参数的存储过程
程序体内需要对输入的参数进行判断
并执行相应的语句
我们来使用CASE语句
下面来一起进行操作
LOOP 语句
可以使某些特定的语句重复
与 IF 和 CASE 语句相比
LOOP 只实现了一个简单的循环
并不进行条件判断
LOOP语句允许某些特定的语句
或语句群进行重复执行
实现一个简单的循环构造
但是我们需要注意的是
LOOP语句本身不存在停止循环的控制
因此我们需要与LEAVE 配合才能停止循环
跳出循环过程
LEAVE语句
通常和BEGIN...END或者循环一起使用
我们来看一下它的表现形式
其中
loop_lable是一个自定义的LOOP循环标志
以此告知编译器跳出的是哪一个循环
下面我们来看一个案例来进行讲解
案例三
创建一个函数
要求输入一个1-100的正整数
求此正整数到100之间的所有正整数之和
这是一个带参数的自定义函数
使用循环进行求和计算
下面我们来看具体的操作
REPEAT 语句是有条件控制的循环语句
每次语句执行完毕后
会对条件表达式进行判断
如果表达式返回值为真
则循环结束
否则重复执行循环中的语句
REPEAT 语句的基本语法形式如下
REPEAT循环语句先执行一次循环体
之后呢判断condition条件是否为真
否则跳出循环
如果为假
则继续执行循环
begin_label
是REPEAT语句自定义的标注名称
在一些特定的情况下使用
该参数可以省略
我们来看案例四
使用REPEAT语句来完成案例三的要求
根据案例三的代码
我们只需要对循环语句的开头和结尾
进行修改即可
我们来看具体操作
WHILE 语句也是有条件控制的循环语句
WHILE 语句和 REPEAT 语句不同的是
WHILE 语句是当满足条件的时候
执行循环内的语句
否则退出循环
WHILE 语句的基本语法形式如下
WHILE在执行时首先判断循环执行的条件
满足条件的时候才执行循环
否则不执行循环
我们来看案例五
使用WHILE语句完成案例三的要求
我们同样只需要对循环语句的开始和结尾
进行修改即可
我们来看具体操作
ITERATE语句
可以出现在LOOP语句
REPEAT语句和WHILE语句内
其意为“再次重新循环”
语句格式如下
该语句的语法格式与LEAVE大同小异
但区别在于
LEAVE语句是离开一个循环
而ITERATE语句是重新开始这个循环
我们来看案例六
求10-0以内的奇数之和
这是一个不带参数的自定义函数
自定义一个INT类型的变量
初始值为0
此变量循环自增一次
自增之后呢
我们首先需要对变量进行求余数运算
当余数为1的时候
我们要自加
如果余数不为1的时候
我们就需要重新重复这个循环
我们来看具体操作
在本小节中
我们首先介绍了流程控制语句
它的相关概念与作用
然后我们主要对常用的七种流程控制语句
它的语法进行讲解
这七种流程控制语句
主要实现的是选择与循环的控制
此外
我们还通过一些案例
分析演示了这七种流程控制语句
它们的具体使用方法
本次课就讲到这里
谢谢
再见
-1.1 数据库基础知识
-1.2 MySQL的安装与运行
-第1章 测试
-2.1 数据库的基本操作
-2.2 表的基本操作
-2.3 MySQL数据类型
-2.4 约束设置
-2.5 索引
--2-5索引视频
--2-5索引课件
--2-5索引实训
-第2章测试
-3.1 插入记录
-3.2 修改记录
-3.3 删除记录
--3.3删除记录
-第3章 测试
-4.1 select语句
-4.2 单表查询
-4.3 多表查询
-4.4 子查询
--4-4子查询课件
--4-4子查询实训
-4.5 外键
--4-5外键视频
--4-5外键课件
--4-5外键实训
-4.6 视图
--4-6视图视频1
--4-6视图视频2
--4-6视图课件
--4-6视图实训
-第4章测试
-5.1 函数
--5-1系统函数
--5-1函数课件
--5-1 函数实训
-5.2 流程控制语句
-5.3 事务与游标
-5.4 存储过程
-5.5 触发器
--5-5触发器视频
--5-5触发器课件
--5-5触发器实训
-第5章测试
-6.1 数据库备份与还原
-6.2 异构数据源导入导出
-第6章测试
-7.1 用户管理
-7.2 权限管理
-7.3 应用实例开发
-第7章测试