我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL基础篇——存储过程和函数中的变量

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL基础篇——存储过程和函数中的变量

🙌作者简介:数学与计算机科学学院学生、分享学习经验、生活、 努力成为像代码一样有逻辑的人
🌙个人主页:阿芒的主页
👉推荐一款刷题、找工作神器 牛客网注册即可免费刷题

🥭前言

这一节,介绍MySQL中的变量,为下一节学习存储过程和函数打下基础。


🍓变量

👉系统变量

  • 说明

变量由系统提供,不是用户定义,属于服务器层面

  • 使用的语法

查看所有的系统变量
show global | 【session】variables;

查看满足条件的部分系统变量
show global | 【session】variables like ‘%char%’;

查看指定的某个系统变量的值
select @@global | 【session】.系统变量名;

为某个系统变量赋值
方式一:
set global | 【session】系统变量名=值;
方式二:
set @@global | 【session】.系统变量名=值;

注意:

  • 如果是全局级别,则需要加GLOBAL,如果是会话级别,则需要加SESSION,如果不写,则默认SESSION

  • 模糊查询用SHOW 具体查询用SELECT

  • 分类

📑 全局变量

作用域:服务器每次启动将为所有的全局变量赋初始值,针对于所有的会话(连接)有效,但不能跨重启

语法:
①查看所有的全局变量
show global variables;
2、查看部分的全局变量
show global variables like ‘%char%’;
3、查看指定的全局变量的值
select @@global.autocommit;
select @@tx_isolation;
4、为某个指定的全局变量赋值
set @@global.autocommit=0;

📑会话变量

作用域仅仅针对于当前会话(连接)有效

语法:
①查看所有的会话变量
show variables;
show session variables;
2、查看部分的会话变量
show variables like ‘%char%’;
show session variables like ‘%char%’;
3、查看指定的某个会话变量
select @@session.tx_isolation;
select @@tx_isolation;
4、为某个会话变量赋值
方式一:
set @@session.tx_isolation=’read-uncommitted’;
方式二:
set session tx_isolation=’read-committed’;


👉自定义变量

  • 说明

变量是用户自定义的,不是由系统定义的

  • 使用步骤
    ①声明
    ②赋值
    ③使用(查看、比较、运算等)

  • 分类

📑用户变量

作用域:针对于当前会话(连接)有效,同于会话变量的作用域
应用在任何地方,也就是begin end 里面或begin end外面
赋值的操作符:=或 :=

语法
①声明并初始化
set @用户变量名=值;或
set @用户变量名:=值;或
select @用户变量名:=值;
②赋值(更新用户变量的值)
方式一:通过set或select
set @用户变量名=值;或
set @用户变量名:=值;或
select @用户变量名:=值;
方式二:通过select into
select 字段 into @变量名
from 表;
③使用(查看用户变量的值)
select @用户变量名;

📑 局部变量

作用域:仅仅在定义它的begin end中有效
应用在begin end中的第一句话

语法
①声明
declare 变量名 类型;
declare 变量名 类型 default 值;
②赋值
方式一:通过set或select
set 局部变量名=值;或
set 局部变量名:=值;或
select @局部变量名:=值;
方式二:通过select into
select 字段 into 局部变量名
from 表;
③使用
select 局部变量名;

📝用户变量和局部变量对比

作用域定义和使用的位置语法
用户变量当前会话会话中的任何地方必须加@符号,不用限定类型
局部变量BEGIN END中只能在BEGIN END中,且为第一句话一般不用加@符号,需要限定类型

来源地址:https://blog.csdn.net/qq_43499848/article/details/126711714

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL基础篇——存储过程和函数中的变量

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL基础篇——存储过程和函数中的变量

🙌作者简介:数学与计算机科学学院学生、分享学习经验、生活、 努力成为像代码一样有逻辑的人 🌙个人主页:阿芒的主页 👉推荐一款刷题、找工作神器 牛客网注册即可免费刷题 文章目录 &
2023-08-21

MySQL基础篇(04):存储过程和视图,用法和特性详解

本文源码:GitHub·点这里 || GitEE·点这里一、存储过程1、概念简介存储程序是被存储在服务器中的组合SQL语句,经编译创建并保存在数据库中,用户可通过存储过程的名字调用执行。存储过程核心思想就是数据库SQL语言层面的封装与重用性。使用存储过程可以较
MySQL基础篇(04):存储过程和视图,用法和特性详解
2020-12-21

详解MySQL中的存储过程和函数

目录区别优点创建储存函数和过程储存过程储存函数查看储存过程操作变量赋值变量例子定义条件和处理过程条件处理程序游标流程控制语句储存过程和函数就是数据器将一些处理封装起来,调用区别调用储存过程只需要使用CALL,然后指定储存名称和参数,参数
2022-08-11

mysql存储过程和函数的区别

存储过程与函数的区别:存储过程可返回多个值或结果集,而函数仅返回单个标量值。存储过程通常在事务中执行,而函数可独立执行。存储过程具有副作用,而函数通常没有。存储过程可重用,但函数通常比存储过程更易于重用。存储过程性能通常较优,但函数可能更快
mysql存储过程和函数的区别
2024-04-22

mysql 在存储过程中的用户变量、系统变量、局部变量的区别

MySQL数据库中的变量分为MySQL系统变量和MySQL用户变量。 一、MySQL用户变量:基于会话变量实现的, 可以暂存值, 并传递给同一连接里的下一条sql使用的变量.当客户端连接退出时,变量会被释放。 1、用户变量定义: 用户变量:以"@"开始,形式为
mysql 在存储过程中的用户变量、系统变量、局部变量的区别
2020-01-27

如何在MySQL中使用存储过程和函数?

如何在MySQL中使用存储过程和函数?在MySQL中,存储过程和函数是被封装的一组SQL语句,可以被重复调用。存储过程是一组可以在服务器上执行的SQL语句集合,而函数则是一个独立的且可重用的代码块。两者的不同之处在于,存储过程可以返回多个结
2023-10-22

Navicat在存储过程中如何使用变量和参数

在Navicat中,存储过程可以使用变量和参数来增强灵活性和可重用性。以下是在Navicat中如何使用变量和参数的步骤:定义变量:在存储过程中,可以使用DECLARE语句来定义变量。变量可以用来存储查询结果、临时值或其他数据。DECLARE
Navicat在存储过程中如何使用变量和参数
2024-05-10

MySQL中如何定义和调用存储过程和函数

在MySQL中定义存储过程和函数的语法如下:定义存储过程:DELIMITER //CREATE PROCEDURE procedure_name()BEGIN-- 存储过程逻辑END //DELIMITER ;定义函数:DELIMI
MySQL中如何定义和调用存储过程和函数
2024-03-06

第62讲:MySQL存储过程中变量的定义及应用

文章目录 1.系统变量1.1.查看系统变量的语法格式1.2.设置系统变量值的语法格式1.3.系统变量使用案例 2.用户自定义的变量2.1.用户自定义变量的语法格式2.2.用户自定义变量的案例 3.可以在存储过程中定义的局
2023-08-16

编程热搜

目录