mysql 变量

作者: 暴躁程序员 | 来源:发表于2023-03-13 08:57 被阅读0次

一、系统变量

系统创建的默认变量,mysql服务每次重启将会重置系统变量,如果想永久设置环境变量,需要修改配置文件

1. 全局变量 GLOBAL

在每一个会话下都有效

  1. 查看 系统全局变量
SHOW GLOBAL VARIABLES; -- 查看所有系统全局变量
SHOW SESSION VARIABLES LIKE '%date%'; -- 通过条件过滤需要的系统全局变量
SELECT @@GLOBAL.autocommit; -- 根据系统全局变量名查看值
  1. 修改 系统全局变量的值
SET @@GLOBAL.autocommit = 0; -- 根据系统全局变量名修改值,注意:如果是可读变量则不可修改,可修改my.ini配置进行修改

2. 会话变量 SESSION

仅在当前会话有效(会话:当前打开的mysql连接)
默认的系统变量是SESSION会话变量,可以省略 SESSION 关键词

  1. 查看 系统会话变量
SHOW SESSION VARIABLES; -- 查看所有系统会话变量
SHOW SESSION VARIABLES LIKE '%date%';   -- 通过条件过滤需要的系统会话变量
SELECT @@SESSION.autocommit;   -- 根据系统会话变量名查看值


SHOW VARIABLES;         -- 查看所有系统会话变量
SHOW VARIABLES LIKE '%date%';           -- 通过条件过滤需要的系统会话变量
SELECT @@autocommit;           -- 根据系统会话变量名查看值
  1. 修改 系统会话变量的值
SET @@SESSION.autocommit = 0; -- 根据系统会话变量名修改值,如果是可读变量则不可修改,可修改my.ini配置进行修改
SET @@autocommit = 0;        -- 根据系统会话变量名修改值,如果是可读变量则不可修改,可修改my.ini配置进行修改

二、自定义变量

1. 用户变量

仅在当前会话中有效(会话:当前打开的mysql连接)

  1. 创建/修改 自定义用户变量
-- 方式一:SET @变量名 = 变量值;
SET @a = 100; 

-- 方式二:SET @变量名 := 变量值;
SET @b := 200; 

-- 方式三:SELECT @变量名 := 变量值;
SELECT @c := 300; 

-- 方式四:SELECT 变量值 into @变量名;
SELECT 900 INTO @d; 

-- 方式五:将查询到的单个数据赋值给变量
SELECT username INTO @e FROM `user` WHERE id=1; -- 将查询到的单个数据赋值给变量

  1. 查看 自定义用户变量的值
-- 查看自定义全局变量
SELECT @a,@b,@c,@d,@e;

2. 局部变量

仅在当前会话的存储过程中的 BEGIN END 块中有效,变量名前可不加@符号

  1. 创建 自定义局部变量
    语法:DECLARE 变量名 变量类型 DEFAULT 变量值;
-- 创建 MySQL 存储过程
CREATE PROCEDURE find_user()
BEGIN 
DECLARE aaa INT DEFAULT 100; -- 创建局部变量
SET aaa := 999; -- 修改局部变量的值
SELECT aaa;
END;

CALL find_user() -- 调用 MySQL 存储过程,结果:999
  1. 修改 自定义局部变量
    在当前会话的存储过程中的 BEGIN END 块中使用
-- 方式一:SET 变量名 = 变量值;
SET a = 100; 

-- 方式二:SET 变量名 := 变量值;
SET b := 200; 

-- 方式三:SELECT 变量名 := 变量值;
SELECT c := 300; 

-- 方式四:SELECT 变量值 into 变量名;
SELECT 900 INTO d; 

-- 方式五:将查询到的单个数据赋值给变量
SELECT username INTO e FROM `user` WHERE id=1; -- 将查询到的单个数据赋值给变量

相关文章

  • 1 MySQL安装流程

    配置环境变量新建变量MYSQL_HOME,变量值为MySQL所在文件夹Path变量值增加%MYSQL_HOME%\...

  • mysql实战

    配置环境变量 1)新建MYSQL_HOME变量,并配置:C:\Program Files\MySQL\MySQL ...

  • MySQL 变量的定义

    MySql中的变量定义 根据mysql手册,mysql的变量分为两种:系统变量和用户变量。但是在实际使用中,还会遇...

  • MySql(Win)

    MySql环境变量配置 1.在系统变量中,新建MYSQL_HOME变量,并配置: C:\Program Files...

  • mysql配置本地环境变量

    (10)配置环境变量 前面步骤完成后安装好MySQL,为MySQL配置环境变量。MySQL默认安装在C:\Prog...

  • Mysql变量

    Mysql变量 之前对mysql的变量概念很模糊, 作为一个有上进心的程序员有必要系统的理一下mysql的变量my...

  • MySql测试与启动

    文章摘要:1、配置MySql环境变量2、MySql初始化并配置密码 1、将mysql加入环境变量 2、配置--ba...

  • Sqoop2的安装和使用

    解压并安装 修改环境变量 修改sqoop的环境变量 下载mysql驱动包,mysql-connector-java...

  • mysql补充:局部变量

    mysql中各种类型变量的定义以及赋值使用MySQL中实现rank排名查询 # 1、局部变量(即@开头的变量)在一...

  • mysql变量

    由来 在学习事务修改tx_isolation这个变量的时候发现了mysql出现修改了这个变量但是查询的时候一直都是...

网友评论

    本文标题:mysql 变量

    本文链接:https://www.haomeiwen.com/subject/szkqrdtx.html