变量、流程控制与游标20221027

本文详细介绍了MySQL中的变量类型,包括系统变量和用户变量,特别是会话和局部变量的查看与修改。此外,还阐述了流程控制的基本结构如顺序、分支和循环,并提到了相关控制语句。最后,讲解了游标的声明、打开、使用和关闭操作,这些都是数据库操作中的重要概念。
摘要由CSDN通过智能技术生成

一. 变量

1.1 系统变量

  • 全局系统变量(global)
  • 会话系统变量(session )

1.1.1 查看系统变量

# 查看所有的全局(global)变量
SHOW GLOBAL VARIABLES;


# 查看所有的会话(session)变量
SHOW GLOBAL VARIABLES;

SHOW VARIABLES;

# 查看满足条件的部分系统变量
SHOW GLOBAL VARIABLES LIKE '%标识符%'; 

# 查看满足条件的部分会话变量
SHOW SESSION VARIABLES LIKE '%标识符%';

1.1.2 查看指定的系统变量

  • 作为MySQL编码规范,MySQL中的系统变量以两个"@“开头,其中”@@global"仅仅作用于标记全局系统变量,“@@session”仅仅用于会话系统变量。"@@"首先标记会话系统变量,如果会话系统变量不存在,则标记全局系统变量。
## 查看指定的系统变量的值
SELECT @@global.变量名;

## 查看指定的会话变量的值
SELECT @@session.变量名;

SELECT @@变量名;

1.1.3 修改系统变量的值

  • 有的时候,数据库管理员需要修改系统变量的默认值,以便修改当前会话或者MySQL服务实例的属性、特征。具体方法:
    • 方法1:修改MySQL配置文件,继而修改MySQL系统变量的值(该方法需要重启MySQL服务)
    • 方法2:在MySQL服务运行期间,使用"set"命令重新设置系统变量的值
SET @@global.变量名 = 变量值;

SET GLOBAL 变量名 = 变量值;


SET @@session.变量名 = 变量值;

SET SESSION 变量名 = 变量值;

1.1 用户变量

  • 会话用户变量:作用域和会话变量一样,只对当前连接会话有效
  • 局部变量:只在BEGINEND语句块中有效。局部变量只在存储过程中函数中使用。

1.1.1 会话用户变量

  • 变量的定义:

# 方式1:
SET @用户变量 =;
SET @用户变量 :=;

SET @m1 = 1;
SET @m2 := 2;
SET @sum := @m1 + @m2; 



# 方式2:
SELECT @count := COUNT(*) FROM employees;
SELECT @count;

1.1.1 局部变量

  • 定义:可以使用declare语句定义一个局部变量
  • 作用域:仅仅在定义它的BEGIN...END中有效
  • 位置:只能放在BEGIN...END中,而且只能放在第一句

二. 流程控制

三大流程:

  • 顺序结构
  • 分支结构
  • 循环结构

三大流程控制语句: (注意:只能用于存储程序)

  • 条件判断语句:IF语句和CASE语句
  • 循环语句:LOOPWHILEREPEAT语句
  • 跳转语句:ITERATELEAVE语句

三. 游标

  • 声明游标
  • 打开游标
  • 使用游标
  • 关闭游标
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Martin__Liu

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

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

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

打赏作者

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

抵扣说明:

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

余额充值